これは私のシナリオです。私はbackgoundサウンドを再生しているアプリがあります。 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()
画面がオンになっている場合は通知します。したがって、画面がオンになっていてもデバイスがロックされている場合はtrueになります。 代わりに、
inKeyguardRestrictedInputMode()
は、デバイスがロックされている場合にtrueになります。
関連する問題
- 1. デバイス上でブルートゥースが有効になっているかどうかを確認する方法
- 2. デバイスでSmartLockが有効になっているかどうかを確認する方法
- 3. iOSデバイスでPINコードが有効になっているかどうかを確認する方法
- 4. sql_safe_updatesがオンになっているかどうかを確認する方法?
- 5. アンドロイドデバイスがオフになっているかどうかを確認する方法
- 6. ビデオが重なっているかどうかを確認する方法
- 7. Androidデバイスにオープンアクセサリーモードがあるかどうかを確認する方法
- 8. セキュアエンクレーブがデバイスで使用可能かどうかを確認する方法
- 9. HealthKitが承認されているかどうかを確認する方法
- 10. デバイス上にアプリケーションがあるかどうかを確認する
- 11. デバイスがウェブに接続されているかどうかを確認する
- 12. デバイスがAndroid Oreo API 26以上でストレージが不足しているかどうかを確認する方法
- 13. デバイスがオンラインかどうかを確認する
- 14. どうかを確認する方法
- 15. BinaryReader C# - バイトが残っているかどうかを確認
- 16. デバイスが連続画像のフォーカスモードに対応しているかどうかを確認する方法は?
- 17. デバイス画面がIOSに記録されているかどうかを確認する方法11
- 18. デバイスがシステムに接続されているかどうかを確認する方法は?
- 19. デバイスが電源、USBまたはDockに接続されているかどうかを確認する方法
- 20. Python gtk:コンボボックスが開いているかどうかを確認する方法?
- 21. anglejsモーダルが開いているかどうかを確認する方法
- 22. Powershellでポートが開いているかどうかを確認する方法
- 23. jqueryUIのオートコンプリートドロップダウンボックスが開いているかどうかを確認する方法
- 24. テキストファイルがgeditで開いているかどうかを確認する方法
- 25. URLが既に開いているかどうかを確認する方法
- 26. python PDFファイルが開いているかどうかを確認する方法
- 27. Openpyxl - セルがいっぱいかどうかを確認する
- 28. アプリがすべてのデバイスで互換性があるかどうかを確認する方法は?
- 29. ポインタがぶら下がっているかどうかを確認する方法はありますか?
- 30. ブラウザがotfをサポートしているかどうかを確認する方法
デバイスが実際にスリープしている場合、アプリケーションプロセッサはコードを実行していません。 画面がロックされている部分があります。 –
十分に公正。では、画面がロックされているかどうかを確認する方法は? – iterator
http://stackoverflow.com/questions/3170563/android-detect-phone-lock-event –