2017-12-15 10 views
1

私は、支払いゲートウェイベースのアプリケーションのほとんどのような私のアプリでスクリーンロックを実装したい、私はLollipopの後で動作するKeyGuardManagerを使って試してみました、問題は私のアプリもKitKatをサポートしています私はこれは私が私のアプリケーションで画面ロックを追加する

KeyguardManager km = (KeyguardManager)getSystemService(KEYGUARD_SERVICE); 
     if(km.isKeyguardSecure()) { 

     Intent i = km.createConfirmDeviceCredentialIntent("Authentication required", "password"); 
     startActivityForResult(i, CODE_AUTHENTICATION_VERIFICATION); 
    } 
    else 
     Toast.makeText(this, "No any security setup done by user(pattern or password or pin or fingerprint", Toast.LENGTH_SHORT).show(); 

答えて

0

あなたは、デバイスをロックする前に発生する可能性がユーザーの非アクティブ期間の上限を設定することができDevice Administration

に見て試してみましたが何である

を助ける必要がある理由、それはです。たとえば:

DevicePolicyManager mDPM; 
ComponentName mDeviceAdminSample; 
... 
long timeMs = 1000L*Long.parseLong(mTimeout.getText().toString()); 
mDPM.setMaximumTimeToLock(mDeviceAdminSample, timeMs); 

はまた、プログラムで即座にロックにデバイスを伝えることができます:

DevicePolicyManager mDPM; 
mDPM.lockNow(); 

EDIT:

は許可 にドキュメントの状態を要求することを忘れないでください

発信側デバイスの管理者にはreqこのメソッドを呼び出すには、USES_POLICY_FORCE_LOCKを に変更してください。存在しない場合は、セキュリティ例外が にスローされます。

チェックこのスレッドhere

+0

あなたが答えるために何をしようとしている、私は自分のアプリでシステムロックのセキュリティを追加することを求めています。 –

+0

明らかにKitkatのためのあなたのアプリに画面の外観を追加する方法 – Rainmaker

+0

それは強制的に閉じられる、私はmDPM.lockNow()を追加しました。 onCreate –

関連する問題