@Override
  public View onCreateView(LayoutInflater inflater, ViewGroup container,
                           Bundle savedInstanceState) {
    //Initialisation des commandes lors du changement de volume
    mCommandTime = 0;
    mSuccessCommand = "";
    final View v = inflater.inflate(R.layout.fragment_recording, container, false);
    v.setOnKeyListener(new View.OnKeyListener() {
      @Override
      public boolean onKey(View v, int keyCode, KeyEvent event) {
        if (mCommandTime==0) {
          //Une fois appuyé, le minuteur ne démarre pas tant que mCommandTime n'est pas remis à 0 après 5 secondes
          mCommandTime++;
          final Handler handler = new Handler();
          handler.postDelayed(new Runnable() {
            @Override
            public void run() {
              Log.d(TAG, "Initialiser openPass après 5 secondes");
              mSuccessCommand = "";
              //Chaîne de caractères uniquement lorsque la minuterie est activée(mSuccessCommand)Peut être ajouté à
              Log.d(TAG, "La minuterie peut être démarrée après 5 secondes.");
              mCommandTime= 0;
            }
          }, 5000);
        }else{
          Log.d(TAG,"comandTime"+mCommandTime+"Et je ne peux pas utiliser la minuterie car cela fait plus de 5 secondes");
        }
        if(event.getKeyCode() == KeyEvent.KEYCODE_VOLUME_UP){
          mSuccessCommand=mSuccessCommand+"1";
          Log.d(TAG,"Commander+1, la commande actuelle est"+mSuccessCommand);
        }else if(event.getKeyCode() == KeyEvent.KEYCODE_VOLUME_DOWN){
          mSuccessCommand=mSuccessCommand+"0";
          Log.d(TAG,"Commander+0, la commande actuelle est"+mSuccessCommand);
        }
        if (mSuccessCommand.equals("01101")) { 
          Log.i(TAG,"Le commandement de la vie a été levé");
     
          Toast.makeText(getActivity(), "Le verrou a été libéré.", Toast.LENGTH_SHORT).show();
          
          //Voici le processus de déverrouillage
      }
    });
    // View#Il est important de définir true dans setFocusableInTouchMode
    v.setFocusableInTouchMode(true);
    return v;
  }
}
Lors de la création de SNS, etc. à l'avenir, je voudrais ajuster la transparence de l'application en déverrouillant le bouton de volume. S'amuser
Recommended Posts