2

我正在使用 android 中的接近传感器做一个应用程序。当传感器改变时,它应该锁定手机,当手机使用相同的传感器锁定时,它应该解锁手机。要锁定手机,请使用双击机制。只需点击一下即可锁定。我的代码如下:

@Override
 public void onSensorChanged(SensorEvent event) {
 // TODO Auto-generated method stub
  if(event.sensor.getType()==Sensor.TYPE_PROXIMITY){

         if(curTime2 - curTime1 < 1000) 
      {
        Tap++;
        if(Tap==2 ) //&& (curTime2 - curTime1)==100000)
        {
          mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);                 
            mDeviceAdminSample = new ComponentName(Controller.this,
            LockScreenActivity.class);              
          active = mDPM.isAdminActive(mDeviceAdminSample);
          if(active){
            mDPM.lockNow();
            flagLock = true;
              }
       Tap=0;   

         // unlock

     if(flagLock == false){ 
         mKeyGuardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
     mLock = mKeyGuardManager.newKeyguardLock("activity_classname");
     mLock.disableKeyguard();
    }
}

解锁代码仅在第一次点击时有效。我需要它应该在手机锁定但它不起作用后执行。这个怎么做?提前谢谢

4

1 回答 1

-1

当手机被锁定时,您的应用程序进入待机模式,因此编写的代码不起作用。您需要保持您的应用程序打开以使其在手机锁定时工作。为此,您需要获得用户授予的权限并在执行此代码之前更改手机设置。

于 2014-10-24T12:13:58.973 回答