唤醒屏幕并显示服务活动

时间:2017-02-15 22:01:12

标签: java android service wakeup

我有一个运行后台的IntentService并监听传入的TCP消息。收到所需的消息后,设备应该唤醒并且MainActivity位于顶部。

我可以启动一个新的MainActivity并唤醒设备,但后来我有很多实例。最好的解决方案是向MainActivity发送广播消息,但是我无法唤醒屏幕。

我设置了这些权限:

<uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
<uses-permission android:name="android.permission.WAKE_LOCK" />

我在onResume()

中有这个
final Window win = getWindow();
win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
            WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
            WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON |
            WindowManager.LayoutParams.FLAG_ALLOW_LOCK_WHILE_SCREEN_ON);

我甚至可以调用我的onResume()函数,但屏幕是黑色的。当我将MainActivity设置为singleTop时,启动新的MainActivity会使屏幕变黑。

有什么想法吗?

0 个答案:

没有答案