即使手机被锁定,我也希望广播能够开始活动。 我发现有窗口标志FLAG_SHOW_WHEN_LOCKED和FLAG_TURN_SCREEN_ON完全符合我的需要。问题是它们在最新版本的android中被弃用。
我还发现可以使用setShowWhenLocked(true)和setTurnScreenOn(true)方法,但它们会给我一个错误"没有虚拟方法setShowWhenLocked(Z)V类Someclass"
您能否建议我如何实现所需的结果?
答案 0 :(得分:6)
使用activityObj.setShowWhenLocked (true)
代替FLAG_SHOW_WHEN_LOCKED
使用setTurnScreenOn()
代替FLAG_TURN_SCREEN_ON
注意:这些方法仅适用于API级别27.因此,您需要在使用之前执行一些检查
if (Build.VERSION.SDK_INT >= 27) {
setShowWhenLocked(true)
setTurnScreenOn(true)
} else {
this.window.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED or
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON)
}