2

Androidで近接センサーを使用して1つのアプリケーションを実行しています。センサーが変更されると電話がロックされ、同じセンサーを使用して電話がロックされると電話のロックが解除されます。電話をロックするには、ダブルタップ機構を使用しています。ワンタップでロック。私のコードは以下のようなものです:

@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();
    }
}

ロック解除コードは、最初のタップでのみ機能します。電話がロックされた後に実行する必要がありますが、機能していません。これを行う方法?事前にThx

4

1 に答える 1