各位大侠,大家好
小弟想做个程序能够自由的控制锁键盘,但是我在看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();
}
}
}
解决方案 »
- android入门,发现一个问题,终于解决
- Android开发新的机遇和市场
- getSystemService无法获取传感器服务,是怎么回事呢?
- 第一次写Android 为什么不显示
- android ListView中的RatingBar怎么设置它的评分?
- android listview 分隔线 显示不全 ---- 求正确解决方法
- 求助:Android系统对于硬件加速GPU的支持
- 使用 NDK android.mk ,LOCAL_LDLIBS 找不到库,怎么解决??
- 求助,Google Map编程问题,谢谢各位!
- Android Studio中关于类的调用
- 来自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 }