Это не дубликат, а особый случай износа Android. Я пытаюсь заставить приложение Android Wear что-то делать при выполнении определенных жестов. Но я понял, что событие onKeyDown () вообще не вызывается. Любая помощь или информация я в этом отношении полезна. Вот мой простой фрагмент кода.
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gesture_ema);
Log.d(TAG, "Inside on create");
//Show prompt window on top always
getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED + WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON +
WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
//Prompt vibrator
vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
if (vibrator != null) {
vibrator.vibrate(VIBRATION_PATTERN_INTENSE, -1);
}
// mTextView = (TextView) findViewById(R.id.text);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event){
Log.d(TAG, "Inside keydown");
switch (keyCode){
case KeyEvent.KEYCODE_NAVIGATE_NEXT:
Toast.makeText(this, "NAVIGATE_NEXT", Toast.LENGTH_LONG).show();
Log.d(TAG, "NAVIGATE_NEXT");
vibrator.cancel();
return true;
case KeyEvent.KEYCODE_NAVIGATE_PREVIOUS:
Toast.makeText(this, "NAVIGATE_PREVIOUS", Toast.LENGTH_LONG).show();
Log.d(TAG, "NAVIGATE_PREVIOUS");
vibrator.cancel();
return true;
}
return super.onKeyDown(keyCode, event);
}
EDIT
Сначала я подумал, что проблема была решена из-за разрешения, которое я добавил. Но это разрешение устарело, и оно не имело ничего общего с этим делом. Затем, когда кто-то в комментариях предложил включить жесты, я понял, что есть места, где фактически используется жест наклона. Один из них - наклонить и разбудить часы, которые контролируются приложением Wear OS. Второе - в настройках износа, называемых включением жеста. Это обязательный шаг, поскольку он также проходит обучение калибровке. Следовательно, эта вещь не имеет разрешения как таковая и должна быть сделана вручную. Как только я включил это и закончил учебник, вызывалось событие keydown. Спасибо всем: -)