GearVR переопределяет кнопки «Назад» и «Домой»

Я пытаюсь переопределить кнопки «Назад» и «Домой» в моем приложении GearVR. Я на самом деле пытаюсь полностью отключить их. Я пытался:

@Override
public void onBackPressed() {
    Log.d(TAG, "onBackPressed: ");

}

@Override
public boolean onKeyLongPress(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        Log.d(TAG, "onKeyLongPress: ");

    }
    return false;
}

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
    Log.d(TAG, "onKeyUp: "+keyCode);
    if(keyCode==KeyEvent.KEYCODE_BACK){
       return false;
    }
    //return super.onKeyUp(keyCode, event);
    return false;
}

Я также просмотрел примеры в репозитории SamsungGearVR. .

Единственное, что мне удалось зафиксировать, это onKeyLongPress, но я все еще не могу переопределить его, просто добавив к нему.

Конечным результатом является то, что я хочу полностью отключить кнопки «Назад» и «Домой».


person w3bMak3r    schedule 04.04.2017    source источник


Ответы (1)


Начиная с версии Android 4.0+, вы не можете переопределить кнопку «Домой», это изменение было сделано в целях безопасности. У вас есть возможность отключить кнопку «Домой» с помощью функции закрепления экрана, представленной в Android 5.0.

Для отключения кнопки «Назад» у вас есть два варианта:

Переопределение public void onBackPressed() или onKeyDown(int keyCode, KeyEvent event). Поскольку переопределение onBackPressed не сработало, я бы попробовал onKeyDown.

Кроме того, было бы очень полезно, если бы вы предоставили сегмент кода, который ведет себя не так, как ожидалось, вместе с кодом, который вы пробовали.

person C.Washington    schedule 05.04.2017