2012-02-03 19 views
12

新しいバージョンのAndroid(> 3.0)には、 に名前とスナップショットを持つ最近のアプリのリストが表示される画面ボタンがあります。 私のアプリ自体はパスワードで保護されていますが、この概要では がそのスナップショットに機密データを表示している可能性があります。だから、特定の画像(ロゴなど)をOSに決定させるのではなく、表示させるようにする方法はありますか?最近のアプリリストに表示されるスナップショットを変更するにはどうすればよいですか?

+0

これを達成する他のチャンスはありますか? – Alex

+0

参照:http://stackoverflow.com/questions/9822076/how-do-i-prevent-android-taking-a-screenshot-when-my-app-goes-to-the-background – Snicolas

答えて

20

今のところ不可能なようです。 onCreateThumbnailというメソッドがありますが、呼び出されていないため、現在システムでは使用されていません。あなたの窓にFLAG_SECUREを追加することにより、機密データを含む活動にサムネイルを無効にするには

1:私は2つの可能な解決策を参照してくださいgetWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);
2.のAndroidManifest.xmlでの活動のためにandroid:excludeFromRecent属性を設定することで、最近のアプリから活動を除外するには

+0

@Azat:In私のアプリ、私はユーザーの好みに基づいてFLAG_SECUREを設定/クリアする機能を持っています。フラグが設定されていれば、KITKATと黒い画面がタスクスイッチャーに見えるまでうまくいきました。 Lollipopでは、Overviewには、FLAG_SECUREが設定されていない(クリアされていない)時間である、自分のアプリの最後のスナップショット(アクティビティ)が表示されます。 http://stackoverflow.com/q/29564826/1263215 –

2

Azatが提供するソリューションは、引き続きLollipopでも有効です。

ただ、ノート、あなたが全体アプリのために、最近のリストでスナップショットを見ていないを継続したい場合は、ALL実装活動はsetContentView();

onCreate()方法で旗getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); を指定する必要があります

それ以外の場合、最近のリストのスナップショットには、ユーザーがナビゲートした場合のフラグのない最初のアクティビティが表示されます。

関連する問題