私が取り組んでいるアプリは、ホームボタンを押してアプリを停止するときに、「最近の仕事」画面に表示してはいけないいくつかの機密情報を表示します。Android:最近のアプリをカスタマイズするサムネイル(デフォルトではスクリーンショット)
私はスクリーンショットの機密データをぼかしたり、代わりにアプリのロゴを表示したいと考えています。
私は以下のアプローチを認識していますが、彼らは私の要件に適合しない:manifiestにactvitieのandroid:excludeFromRecents
trueに設定
- は、最近のタスクには全く示されているからアプリを防ぎます。これにより、ユーザーエクスペリエンスが中断されます。
FLAG_SECURE
を使用すると、recentsタスク画面に空白のカードが表示されます。 (How do I prevent Android taking a screenshot when my app goes to the background?)私は空白の画面が嫌いです。ただし、回避策がない場合は、このソリューションに固執します。- オーバーライド
onCreateThumbnail
は理想的なソリューションのように思えるけど、それは現在のOSで起動されていないと、残念ながら、動作しません:((
https://code.google.com/p/android/issues/detail?id=29370)
そして、私が試してみたいくつかの回避策が、それのdidnがあります期待して」トンの仕事:それはスクリーンショットだよう
-
はでアプリのロゴを示し、新たな活動を開始し
- ではなく、実際の支援の一つを示した。しかし、新たな活動が開くのに時間がかかりすぎると、それはユーザーが中断されています。経験。
- アクティビティのコンテンツビューをアプリのロゴの画像に設定します()。それは私にとって素晴らしい解決策のようでした。残念ながら、最近のタスク画面のスクリーンショットは、不特定の時間に取得されます。テスト中、アプリのロゴはすぐに表示され、「ホーム」を押すとアプリが終了する前に表示されますが、結果のスクリーンショットはその前にそのアクティビティが表示されます。
- ウィジェットから機密データを削除すると(例:
textView.setText("")
)、今説明したスクリーンショットのタイミングと同じ問題が発生します。
リストされた回避策の代替案または解決策はありますか?
機密情報は、「マイアカウント」のような孤立したアクティビティに表示されていますか? – Gapp
いいえ、ほとんどのアクティビティで機密データが表示されます。 – xvlcw