Java 活动警报播放时,索尼Xperia P中的屏幕不会打开
我的安卓闹钟程序在很多三星和HTC设备上都不起作用;在手动打开屏幕之前,它不会打开屏幕,也不会播放报警。 这个问题出现在索尼Xperia P和华为荣誉手机中。。。 我在代码中使用任何我认为可以解决我的问题的东西,但它不是固定的!:( 这是我的代码:Java 活动警报播放时,索尼Xperia P中的屏幕不会打开,java,android,keyguard,keyguardlock,Java,Android,Keyguard,Keyguardlock,我的安卓闹钟程序在很多三星和HTC设备上都不起作用;在手动打开屏幕之前,它不会打开屏幕,也不会播放报警。 这个问题出现在索尼Xperia P和华为荣誉手机中。。。 我在代码中使用任何我认为可以解决我的问题的东西,但它不是固定的!:( 这是我的代码: try { // baraye roshan kardane safe va roshan negah dashtane oon dar Huawei honor PowerManager mPowerManager = (Powe
try {
// baraye roshan kardane safe va roshan negah dashtane oon dar Huawei honor
PowerManager mPowerManager = (PowerManager) PlayAlarmActivity.this.getSystemService(Context.POWER_SERVICE);
mWakeLock = mPowerManager.newWakeLock((PowerManager.FULL_WAKE_LOCK
| PowerManager.ACQUIRE_CAUSES_WAKEUP), "Power Manager");
mWakeLock.acquire();
Log.i("Unlock Screen", "1");
} catch (Exception e) {
Log.e("Error in playalarmactivity for unlock screen 1 ...", e.toString());
}
try {
// Set the window to keep screen on
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
Log.i("Unlock Screen", "2");
} catch (Exception e) {
Log.e("Error in playalarmactivity for unlock screen 2 ...", e.toString());
}
try {
// baraye baz kardane lock dar gooshihayi mesle sonye Masoud!!! :D
km = (KeyguardManager) PlayAlarmActivity.this.getSystemService(Context.KEYGUARD_SERVICE);
kl = km.newKeyguardLock("MyKeyguardLock");
kl.disableKeyguard();
Log.i("Unlock Screen", "3");
} catch (Exception e) {
Log.e("Error in playalarmactivity for unlock screen 3 ...", e.toString());
}
尝试将此权限添加到您的
AndroidManifest.xml
:
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
谢谢,我使用了此权限。请再次阅读我的问题。我的应用程序工作正常,但并非在所有Android设备中都能正常运行…:(