Androidで電話を振るのは時々迷惑です. 以下の変更を行うと、音量ダウン/アップキーを押して開発者メニューが開きます。
に次のコードを挿入しますandroid/../MainActivity.java
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN && this.getReactInstanceManager() != null) {
this.getReactInstanceManager().showDevOptionsDialog();
return true;
}
return super.onKeyUp(keyCode, event);
}
React Native Navigation V3を使用すると、次のコードが で動作しMainActivity.java
ます。
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN && this.getReactGateway().getReactNativeHost().getReactInstanceManager() != null) {
this.getReactGateway().getReactNativeHost().getReactInstanceManager().showDevOptionsDialog();
return true;
}
return super.onKeyUp(keyCode, event);
}
この変更後、アプリを再度実行して、上記のコードをreact-native run-android
.
RN 0.59+でテスト済み。
参照: https://facebook.github.io/react-native/docs/integration-with-existing-apps
編集:KeyEvent
ファイル内の他のインポートと同様にインポートを含めます。
import android.view.KeyEvent;