作者narihira2000 (つよし)
看板AndroidDev
标题[问题] 如何在设有密码的状况下点亮萤幕?
时间Fri Sep 21 21:55:47 2018
各位板友们好
小弟最近刚学写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
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 103.5.101.236
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/AndroidDev/M.1537538151.A.4CB.html
1F:→ gcobc12632: 挖嘎哩吗斯 09/21 23:35
哇嘎哩吗散QQ
2F:→ erty0402: 应该是 window layer priority比 lock screen 低所以被 09/24 23:56
3F:→ erty0402: 盖掉了,透过设置属性应该可以提高。不确定一般的app能 09/24 23:56
4F:→ erty0402: 不能做到 09/24 23:56
在AndroidManifest.xml里面的Intent-filter增加android:priority="1000"
(程式码:
https://ideone.com/7zWfkq )
但是还是无法成功跳出想要的intent QQ
不过前几天在搜寻的时候有发现stackoverflow上有人建议用onStartCommand
该不会是正解?!
※ 编辑: narihira2000 (103.5.101.236), 09/25/2018 15:33:15
※ 编辑: narihira2000 (103.5.101.236), 09/27/2018 20:18:45