2013-04-22 4 views
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); 
} 
} 

Есть ли способ, чтобы сделать возможным ..

ответ

1

вы должны использовать ResetPassword

От Docs

public boolean resetPassword (String password, int flags)

Принудительно ввести новый пароль для разблокировки устройства (пароль, необходимый для доступа ко всему устройству, а не к отдельным учетным записям). Это вступает в силу немедленно

затем вызвать метод блокировки для блокировки устройства

mDPM.lockNow()

Смежные вопросы