問題タブ [keyguard]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 画面がロックされている場合、フラグ FLAG_SHOW_WHEN_LOCKED が設定されていてもダイアログが消える
私はアプリに取り組んでいますが、奇妙な問題に直面しています。画面がロックされている場合、アプリがアクティブになったときに表示されるダイアログがあり、Lolipop、KitKat、および古いバージョンで正常に動作しています。この問題は V6 Marshmallow でのみ発生するようです。ダイアログが 1 秒間表示された後、バックグラウンドで消えるようです。ただし、ダイアログがあるはずの場所を押すと、ダイアログが実際にあったように、ダイアログのアクティビティが機能します。この問題に関して多くの回答が見つかりましたが、どれもうまくいかないようです。onCreate() で、必要なフラグを設定しました。
結果なしでキーガードを無効にしようとしました:
これは、AndroidManifest.xml での私の宣言です。
テーマからダイアログ スタイルを削除すると、機能することに気付きました。しかし、私はそれがダイアログである必要があります!
このコードは、V6 以外のすべてのバージョンで機能することに注意してください。何か案が?
android - FLAG_DISMISS_KEYGUARD は、カスタム ロッカーを使用して Android で動作しなくなりました
5.1.1 に 2 つの nexus 4 があります。1 つはゴー ロッカー、もう 1 つは Google ランチャーです。
私はalarmmangerでアクティビティを開始し、アクティビティにはこれがあります:
ゴーロッカーを持たないネクサスでは、キーガードは解除されますが、そうではありません。
Googleの時計は、キーガードを解除するので、可能だと思います。
ここでこの解決策を試しましたが、うまくいきません。
これを使用しようとしましたが、うまくいきません:
android - Android 画面がロックされているかどうかを確認する
Android デバイス (Android 4.0 以降を実行) がロックまたはロック解除されるたびに、何かを行う必要があります。必要条件は次のとおりです。
- 画面ロックが「なし」に設定されている場合、電源ボタンを押して画面が消えたときにデバイスがロックされたとは見なしません。
- 画面ロックが「なし」以外に設定されている場合、キーガード画面が存在しないときにデバイスのロックが解除されたと見なします。
Android 5.0 で動作しているように見えるこのコードを実装しました。これは、「なし」が使用されている場合の古い Android バージョンのあまり良くない動作を考慮しています。この質問を投稿する前に、このような他の質問も確認しました。
これは、Android 5.0で機能しているようです。しかし、これが処理中に競合状態になりやすいかどうか疑問に思っていましたACTION_SCREEN_OFF
。「なし」以外のもの (「スワイプ」など) が使用されている可能性はありACTION_SCREEN_OFF
ますか?また、キーガードを処理している時点では入力制限モードではありませんが、その後すぐに制限されますか? その場合、デバイスがロックされているとは決して考えませんが、ロックされている可能性があります。
android - ロックを設定し、ロックを解除するためのキーガードマネージャー
keyguard manager
私は次のように設定して使用してlock
いますremove lock
:
キーガードを正常に無効にした後、キーガードを再度有効にできません
android - リフレクションを使用してデバイスの画面ロックのロック解除を設定する
リフレクションを使用して、デバイス画面設定のキーガードを無効としてロックを解除しています。私のAndroidバージョンは4.4.2です。呼び出し中にjava.lang.reflect.InvocationTargetExceptionとして例外を取得し 、java.lang.SecurityException: LockSettingsWrite: どちらも現在のプロセスには android.permission.ACCESS_KEYGUARD_SECURE_STORAGE があります。
コードを共有しています。この例外を修正する方法を教えてください
android - isKeyguardLocked と isDeviceLocked の比較
現在、一部の Android デバイスで厄介なバグに直面しています。KeyguardManager をチェックして、オーディオを無効にする必要があるかどうかを確認しています (ゲームがアクティブでないときや画面がロックされているときはいつでもオーディオを無効にしたいなど)。
メソッドを使用しisDeviceLocked
て、ユーザーがアクセスできるかどうかを確認しています。
しかし今、「isDeviceLocked」== true を継続的に報告するデバイスを見つけました。
Androidのドキュメントによると
ブール値 isDeviceLocked ()
デバイスが現在ロックされていて、ロックを解除するために PIN、パターン、またはパスワードが必要かどうかを返します。
ブール値 isKeyguardLocked ()
キーガードが現在ロックされているかどうかを返します。
異なる SDK バージョンで追加されたことを除いて、isDeviceLocked と isKeyguardLocked の違いは何ですか?
android - キーガードがマシュマロに設定されている場合、着信中に StandOut ウィンドウが表示されない
アプリで Mark Wei の素晴らしいライブラリ StandOut を使用しています: http://pingpongboss.github.io/StandOut/
私がやっていることはTrueCaller Appと非常によく似ています
着信時に自分のビューを表示しています。これは一般的にうまく機能します。
私の問題は何ですか?
非常に特殊なケースでは:
- Android Marshmallow (6) のみ
- キーガードロックON時
次に、アプリの StandOut ウィンドウが着信ウィンドウの背後に戻され、ほんの一瞬ちらつく以外は表示されません。
私は何を試しましたか?
これらのフラグを一緒に使用すると、次のようになります。
- FLAG_DISMISS_KEYGUARD
- FLAG_SHOW_WHEN_LOCKED
さらに(そして別々に)私はこの非推奨の方法を試しました:
これも失敗したとき、アプリの管理者権限を付与しようとしました(長いのでコード全体を追加しませんが、適切に実行しました)、これを試しました:
注: TrueCaller アプリは非常にうまく機能しており、すべての通話で失敗するわけではないため、これが可能であることを知っていることをもう一度強調したいと思います。それを行う正しい方法を見つけるための助けが必要です。
前もって感謝します!
android - ロック画面がまだ表示されるように、ロック画面の上に透明なアクティビティを表示します
どこでもポップアップするアクティビティがあります (特定の GCM メッセージを受信したとき)。アクティビティには透明な領域があるため、Android デバイスの場所によっては、透明な領域を通してすべてを見ることができます。たとえば、PIN ロック画面の上にも表示されます。これを実現するには、次のように透明なレイアウトでアクティビティを開始します。
問題は、その場合、アクティビティの透明な領域が灰色になることです。それを通してロック画面を見ることはできません。ロック画面が表示されたままになるように、ロック画面の上でそのアクティビティを開始する方法はありますか?