[问题] 如何在设有密码的状况下点亮萤幕?(已解决)

楼主: narihira2000 (老羊)   2018-09-21 21:55:47
各位板友们好
小弟最近刚学写android
设计了一个闹钟app
原理是在设定的时间到后,透过alarmManager跳出另一个intent
目前想要实现在关萤幕的状况下,到达设定的时间会自己点亮萤幕跳出该intent
搜寻之后
找到了在SDK 27以前是使用FLAG_TURN_SCREEN_ON
SDK 27以后用setShowWhenLocked(turn)和setTuenScreenOn(true)
程式码如下:https://ideone.com/sq86vS
这些方法在没有萤幕锁定密码时都可以正常运作
但是在有设定萤幕密码的状况下就行不通了,只会有铃响的声音不会点亮萤幕
不知道该如何才能像其他闹钟app一样,在有设密码的状况下自己开启萤幕呢?
还拜托各位大大提点一下或提供可能的关键字
谢谢各位!
===================
更新
目前有找到一个方法,能让有萤幕锁的装置开启萤幕
但没办法跳出intent,要解锁才会跳出
程式码如下:https://ideone.com/4OZndY
虽然里面用到的函式有些好像停用了,但还是可以运作,感觉也有点接近了
不知道要怎么修改才能在锁定的状况下跳出intent呢?
求大大们相助QQ
===================================
更新 已解决
透过下面两篇的aids61517大大的方法已成功解决问题!
简单来说,就是没有使用BroadcastReceiver的问题
透过BroadReceiver收到AlarmManager的讯号后再开启想要开的activity
并在该activity加上上面提到的FLAG_TURN_SCREEN_ON
便能成功在有密码锁的状况下开启萤幕并跳出想要的intent
作者: gcobc12632 (Ted)   2018-09-21 23:35:00
挖嘎哩吗斯
作者: erty0402 (缺副驾驶)   2018-09-24 23:56:00
应该是 window layer priority比 lock screen 低所以被盖掉了,透过设置属性应该可以提高。不确定一般的app能不能做到

Links booklink

Contact Us: admin [ a t ] ucptt.com