したがって、 https://developer.amazon.com/help/faq.html#KindleFireに基づくと、Kindle Fire は disable_keyguard 権限をサポートしていません。
しかし、アプリケーションを通常の Android デバイスと kindle の両方で実行したいと考えています。この問題の簡単な解決策はありますか?
そして、この許可は必須であるため、アプリケーションから削除することはできません。
したがって、 https://developer.amazon.com/help/faq.html#KindleFireに基づくと、Kindle Fire は disable_keyguard 権限をサポートしていません。
しかし、アプリケーションを通常の Android デバイスと kindle の両方で実行したいと考えています。この問題の簡単な解決策はありますか?
そして、この許可は必須であるため、アプリケーションから削除することはできません。
disableKeyguard() 呼び出しを try catch で囲み、そこで追加のロジックを実行することができます。
KeyguardManager kgm = (KeyguardManager) Application.getSystemService(Application.KEYGUARD_SERVICE);
KeyguardManager.KeyguardLock kl = kgm.newKeyguardLock(VIEW_LOG_TAG);
try{
kl.disableKeyguard();
}
catch (SecurityException e)
{
//kindle code goes here
}
アプリの 2 つのエディションが必要です。1 つは Fire 用で、もう 1 つは既存のターゲット用です。これは、2 つの通常の Android プロジェクト (1 つはキーガード機能付き、もう 1 つはキーガード機能なし) で共有される Android ライブラリ プロジェクトにロジックの大部分を配置することで実現できます。
アプリケーションのコンテキストがどのようなものかよくわかりませんが、Wake Lock はどうでしょうか? ただし、これによりバッテリー寿命がいくらか犠牲になる可能性があります。