如何在 phone 睡眠和唤醒后关闭添加系统覆盖视图的 Android 服务?
How to close an Android Service that adds a system overlay view after phone sleep and wake up?
我有一个 Android 服务,它在 onCreate 方法
中添加了一个系统覆盖视图 (TYPE_SYSTEM_ALERT)
WindowManager.addView(mOverlayView, mLayoutParams);
并使用
在 onDestroy 方法中删除它
WindowManager.removeView(mOverlayView);
双击视图时,通过使用
关闭服务将其从屏幕上删除
stopSelf();
叠加视图通过使用
保持屏幕打开
android:keepScreenOn="true"
现在,我按下电源键让phone进入休眠状态,然后再按一次唤醒,解锁后,覆盖视图仍然打开并覆盖在屏幕上。
如何让服务自行停止 when/after 我按下电源按钮 phone 进入睡眠状态?我不希望在醒来并解锁 phone.
后在屏幕上看到叠加视图
观看 ACTION_POWER_OFF
and/or ACTION_POWER_ON
广播。请注意,据我所知,您只能通过 registerReceiver()
从您的服务中注册,而不是通过您的清单。由于您的服务已经 运行,这应该不是问题。收到广播后,停止服务。
我有一个 Android 服务,它在 onCreate 方法
中添加了一个系统覆盖视图 (TYPE_SYSTEM_ALERT)WindowManager.addView(mOverlayView, mLayoutParams);
并使用
在 onDestroy 方法中删除它WindowManager.removeView(mOverlayView);
双击视图时,通过使用
关闭服务将其从屏幕上删除stopSelf();
叠加视图通过使用
保持屏幕打开android:keepScreenOn="true"
现在,我按下电源键让phone进入休眠状态,然后再按一次唤醒,解锁后,覆盖视图仍然打开并覆盖在屏幕上。
如何让服务自行停止 when/after 我按下电源按钮 phone 进入睡眠状态?我不希望在醒来并解锁 phone.
后在屏幕上看到叠加视图观看 ACTION_POWER_OFF
and/or ACTION_POWER_ON
广播。请注意,据我所知,您只能通过 registerReceiver()
从您的服务中注册,而不是通过您的清单。由于您的服务已经 运行,这应该不是问题。收到广播后,停止服务。