2012-02-13 9 views
6

Googleの安全なアプリの1つでは、Android ICSのアプリのスクリーンショット機能を無効にする必要があります。これはルートになっていないデバイスで可能ですか?
おかげで、
RajathAndroidスマートフォンのスクリーンショットを無効にする

+0

これは、デバイスを制御する企業環境でですか、通常のマーケットアプリケーションですか?デバイスを制御すると、スクリーンショットを防ぐことができますが、写真を撮るだけで常に機能します。通常のアプリケーションでは、試してはいけません。 – CodesInChaos

答えて

14

アクティビティクラスにこの行を追加しないでください。これはトリックを行います。

// This disables screen shot to be taken for current activity 
getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE); 

あなたはhave a look at Mark Murphy's blog postにしたいことがあります。

+0

これは、スクリーンショットの実装が標準ではないため、['FLAG_SECURE'](http://developer.android.com/reference/android/view/WindowManager)を確認しないので、これはすべてのICS前のデバイスでは機能しないことに注意してください。 LayoutParams.html#FLAG_SECURE)。 –

1

これは物語の、期間終了可能になることはありません。また、デバッガを使用してメモリを読み取ることによって、デバイスの所有者がアプリケーションで使用される暗号化キーを取得することも可能です。これは、アプリで使用されている「機密」な画像を復号化するために使用できます。

+2

そして最悪の場合、写真を撮ることができます。 – CodesInChaos

+0

@RookとCodeInChaos、あなたの入力に感謝します。私はそのような強力なセキュリティポリシーを要求していないと思う。私は[FLAG_SECURE](http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html#FLAG_SECURE)のトリックを行う可能性があります – rajath

+0

@CodesInChaos通常、画面キャプチャを無効にするのは、アプリ(マルウェアである可能性もあります)が機密情報を取得することを防ぎます –

関連する問題