0

アプリケーション自体からユーザーが指定した特定のパスワードでアプリケーションをロックしたい。

たとえば、SMS「LOCK WITH PASSWORD abc」を受信した場合、abc で電話をロックする必要があります。

デバイス管理者で試してみました。しかし、それは電話をロックするだけです。

私が使用したコードは.....

    IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON); 
                filter.addAction(Intent.ACTION_SCREEN_OFF);

                ComponentName mAdminName = new ComponentName(ScreenLockService.this,LockActivity.class);

                if(!mDPM.isAdminActive(mAdminName))
                {
                    Intent intent1 = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
                    intent1.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mAdminName);
                      intent1.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,"is locked");
                      intent1.putExtra("force-locked", DeviceAdminInfo.USES_POLICY_FORCE_LOCK);

                    context.startActivity(intent1);
                    System.out.println("The Device Could not lock because device admin not enabled");
                    Toast.makeText(getApplicationContext(), "Activate The DeviceAdmin and then Click start Again", Toast.LENGTH_LONG).show();
                    //mDPM.lockNow();
                }
                else
                {
                    System.out.println("The Device  device admin enabled");
                    Intent  intent1 = new Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
                    intent1.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN, mAdminName);
                    intent1.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATION,"onEnabled");
                    mDPM.lockNow();
                    mDPM.setMaximumTimeToLock(mAdminName, 0);
                    intent1.putExtra("force-locked", DeviceAdminInfo.USES_POLICY_FORCE_LOCK);
                    context.startActivity(intent1); 
}
}

それを可能にする方法はありますか..

4

1 に答える 1

1

あなたはresetPasswordを使用する必要があります

ドキュメントから

public boolean resetPassword (String password, int flags)

ユーザーに新しいデバイスのロック解除パスワード (個々のアカウントではなく、デバイス全体にアクセスするために必要なパスワード) を強制します。これはすぐに有効になります

次に lock メソッドを呼び出してデバイスをロックします

mDPM.lockNow()

于 2013-04-22T09:16:31.647 に答える