这是我的场景。我有一个应用程序正在播放背景声音。使用BroadcastReceiver我可以知道显示器什么时候关闭,然后杀掉声音。我还可以判断屏幕是否打开。但是,如果设备处于锁定状态,我不希望音频启动。因此我等待ACTION_USER_PRESENT意图发信号。这一切都是有效的,除了如果用户在关闭屏幕后很快重新启动屏幕,则不会获得锁定屏幕或ACTION_USER_PRESENT消息。那么,有没有办法告诉,当屏幕重新开启时,如果设备被锁定或者没有,我猜这也意味着睡眠或不是?如何判断设备是否正在睡觉
9
A
回答
9
您可以试试KeyguardManager来检查设备是否被锁定。这里有一些代码(我自己没有试过):
KeyguardManager kgMgr = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE);
boolean showing = kgMgr.inKeyguardRestrictedInputMode();
祝你好运!
12
((PowerManager) getSystemService(Context.POWER_SERVICE)).isScreenOn()
0
((PowerManager) getSystemService(Context.POWER_SERVICE)).isScreenOn()
告知用户,如果屏幕上。所以,如果屏幕开启但设备被锁定,则它变为真。 相反,
inKeyguardRestrictedInputMode()
得到真正的只是如果设备被锁定。
相关问题
- 1. 如何判断SQL Server数据库是否正在备份
- 2. 如何判断用户是否在设备主屏幕上
- 3. 如何判断Android设备是否已关闭
- 4. 如何判断一个Android设备是否有硬键
- 5. 如何判断Android设备的IP地址是否公开
- 6. 如何判断Android设备是否能够提供位置?
- 7. 如何判断Cocoa Touch设备是否可以拨打电话?
- 8. 如何判断USB是否连接到Android设备?
- 9. AVSpeechSynthesizer和AirPlay - 音频设备睡觉?
- 10. 如何判断网页是否存在?
- 11. 如何判断IOS设备是否仅在硬件中支持48kHz
- 12. 如何判断某个进程是否在移动设备上运行
- 13. 如何判断是否正在进行骡流消息处理
- 14. 如何判断PDO是否正在模拟语句?
- 15. 如何判断使用TweenLite时Tween是否正在播放?
- 16. 如何判断jQueryUI是否在Rails 3.1中正确加载?
- 17. 如何判断Suitesparse/CHOLMOD是否正在使用GPU?
- 18. 如何判断ob_gzhandler是否正在运行?
- 19. 如何判断当前线程是否正在冒充?
- 20. 如何判断其他人是否正在使用数据库?
- 21. 如何判断我的星火工作是否正在进行?
- 22. 如何判断全屏应用程序是否正在运行?
- 23. 如何判断设备上是否有麦克风(iPhone,iTouch或iPad)?
- 24. 如何判断soundmanager2是否使用html5?
- 25. 如何判断加载是否有效?
- 26. 如何判断W键是否按下
- 27. 如何判断码头是否冻结?
- 28. 如何判断UITextView是否脏?
- 29. 如何判断AUCTeX是否可用?
- 30. 如何判断UITextField是否为firstResponder
如果设备实际处于睡眠状态,则应用程序处理器不执行代码。 屏幕锁定是完全不同的。 – 2010-11-23 20:58:36
够公平的。那么如何判断屏幕是否被锁定? – iterator 2010-11-23 21:09:49