2013-08-06 3 views
0

Мне нужно заблокировать устройство Android, когда пользователь нажимает кнопку. Я искал stackoverflow и читал одни и те же вопросы, но я не нашел кода, который работает на всех версиях android. Вы знаете какой-либо способ, который работает на любой версии Android? (1.6+)android- как заблокировать устройство (в android 1.6+)

UPDATE: Я хочу открыть экран блокировки устройства пользователя, я имею в виду, что я сам не хочу делать блокировку экрана, просто хочу показать экран блокировки по умолчанию пользователя , Я попытался this и this, но ни один из них работал ...

+3

вы хотите заблокировать устройство с помощью пароля или что? пожалуйста, предоставьте некоторые детали и некоторый код, что вы делали до сих пор. – Sameer

+0

@AndroidDeveloper Я упомянул более подробно! – Soheil

ответ

0

Вы можете использовать что-то вроде этого, который использует DevicePolicyManager:

public class SMSMessagingActivity extends Activity 
    { 
     /** 
     * Called when the activity is first created. 
     */ 
     public static DevicePolicyManager mDPM; 
     public static ComponentName devAdminReceiver; 

     @Override 
     public void onCreate(Bundle savedInstanceState) 
     { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.main); 

      mDPM = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE); 
      devAdminReceiver = new ComponentName(context, deviceAdminReceiver.class); 
     } 

     public static void LockNow() 
     { 
      mDPM.lockNow(); 
     } 

     @Override 
     public void onResume() 
     { 
      boolean isAdmin = mDPM.isAdminActive(devAdminReceiver); 
      if (isAdmin) 
      { 
       mDPM.lockNow(); 
      } 
      else 
      { 
       Log.i(tag, "Not an admin"); 
      } 
     } 
    } 
+0

thanx, но он использует 'devicePolicyManager', поэтому работает только на android 2.2 + ... – Soheil

+0

Нет единого способа лечения устройств с 1.6 и 2.2+. Для 1.6+ вы можете использовать KeyguardManager и KeyguardLock, что кажется еще проще. – dendini

+0

не могли бы вы объяснить больше? что вы точно подразумеваете под «KeyguardManager» и «KeyguardLock»? Я пробовал http://stackoverflow.com/a/3594553/2618890, но это не сработало ... – Soheil