各位大侠,大家好
小弟想做个程序能够自由的控制锁键盘,但是我在看keyguardmanager时候很多问题都没看明白,并且在使用disableKeyguard ()方法时候,程序会报错。我想实现用程序控制系统是否锁键盘,我用的api没用错吧??
求助各位大侠帮助,谢谢了下面是我的代码:
public class hello extends Activity {
/** Called when the activity is first created. */
private KeyguardManager.KeyguardLock mKeyguardLock;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
KeyguardManager km = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE);
mKeyguardLock = km.newKeyguardLock("phone");
setContentView(R.layout.main);
}
@Override
protected void onStart() {
super.onStart();
disableKeyguard(true);
} @Override
public void onStop() {
super.onStop();
disableKeyguard(false);
} /**
* Acquires a wake lock and prevents keyguard from enabling.
*/
private void disableKeyguard(boolean disable) {
if (disable) {
mKeyguardLock.disableKeyguard();
} else {
mKeyguardLock.reenableKeyguard();
}
}
}
小弟想做个程序能够自由的控制锁键盘,但是我在看keyguardmanager时候很多问题都没看明白,并且在使用disableKeyguard ()方法时候,程序会报错。我想实现用程序控制系统是否锁键盘,我用的api没用错吧??
求助各位大侠帮助,谢谢了下面是我的代码:
public class hello extends Activity {
/** Called when the activity is first created. */
private KeyguardManager.KeyguardLock mKeyguardLock;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
KeyguardManager km = (KeyguardManager)getSystemService(Context.KEYGUARD_SERVICE);
mKeyguardLock = km.newKeyguardLock("phone");
setContentView(R.layout.main);
}
@Override
protected void onStart() {
super.onStart();
disableKeyguard(true);
} @Override
public void onStop() {
super.onStop();
disableKeyguard(false);
} /**
* Acquires a wake lock and prevents keyguard from enabling.
*/
private void disableKeyguard(boolean disable) {
if (disable) {
mKeyguardLock.disableKeyguard();
} else {
mKeyguardLock.reenableKeyguard();
}
}
}
解决方案 »
- 重写了EditText后发生异常了,求教
- Android新手源代码编译出问题!!请教高手,,
- android 4.0 创建进程
- 监听线程被关闭的问题!!!!
- Android如何实现不同应用之间的调用
- 各位android的开发者是如何看待j2me的?
- google android market哪里有安装文件啊?
- android过滤歌曲的正则表达式
- android 和PC URL 交互疑问
- android+C#编写的webservice,如何防止别人调用自己的webservice呢?
- 来自AdMob的报告显示,Android 设备上网流量飙升1100%,Symbian杯具了...
- 分享一个android开发者超级交流群(500人)
android.permission.DISABLE_KEYGUARD允许程序禁用键盘锁(Allows applications to disable the keyguard ) 试试
我已经这样子按你的要求加了permission,现在点run没有报异常,但是却发现不知道为什么只要加了permission这个程序就不能启动,我通过模拟器主动去点这个程序的图标,却显示:该软件未被安装。
为什么会这样啊,不是每次run时候就自动安装吗?若是去掉permission就不会这样了
还请哪位大侠解答一下啊
我的AndroidManifest如下: <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="test.hello"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name" android:permission="android.permission.DISABLE_KEYGUARD">
<activity android:name=".hello"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity> </application>
<uses-sdk android:minSdkVersion="3" /><uses-permission android:name="android.permission.DISABLE_KEYGUARD"></uses-permission>
</manifest> 我到底哪里弄错了啊,我的天啊
运行时,看看log中,有没有提示正常安装或者其他[2010-04-05 09:25:36 - Hello1] Android Launch!
[2010-04-05 09:25:36 - Hello1] adb is running normally.
[2010-04-05 09:25:36 - Hello1] Performing com.test.hello1.Hello1 activity launch
[2010-04-05 09:25:36 - Hello1] Automatic Target Mode: using device 'P726U'
[2010-04-05 09:25:36 - Hello1] Uploading Hello1.apk onto device 'P726U'
[2010-04-05 09:25:37 - Hello1] Installing Hello1.apk...
[2010-04-05 09:25:38 - Hello1] Success!
[2010-04-05 09:25:38 - Hello1] Starting activity com.test.hello1.Hello1 on device
[2010-04-05 09:25:39 - Hello1] ActivityManager: Starting: Intent { cmp=com.test.hello1/.Hello1 }