¿Cómo puedo "sacudir" un dispositivo Android dentro del emulador de Android para que aparezca el menú dev para depurar mi aplicación React Native

Estoy trabajando en una aplicación multiplataforma React Native para móviles. Estoy escribiendo instrucciones console.log a medida que me desarrollo. Quiero ver estas declaraciones de registro en Chrome mientras estoy ejecutando la aplicación de Android en el emulador predeterminado de Android. De acuerdo con los documentos de Facebook sólo necesito "sacudir el dispositivo". ¿Cómo hago esto en el emulador de Android?

Para acceder al menú del desarrollador en la aplicación:

En iOS agite el dispositivo o pulse el control + ⌘ + z en el simulador. En Android sacude el dispositivo o presione el botón de menú del hardware (disponible en los dispositivos más antiguos y en la mayoría de los emuladores, por ejemplo, en genymotion, puede presionar ⌘ + m para> simular el botón de menú del hardware)

En tu aplicación en el emulador de Android, presiona Fn + F2 en OSX

Con un React Native corriendo en el emulador,
Presione ctrl + m (para Linux, supongo que es lo mismo para Windows y + m para Mac OS X) o ejecute lo siguiente en el terminal:

 adb shell input keyevent 82 

Si está usando el nuevo emulador que viene con Android Studio 2.0, el acceso directo del teclado de menú es ahora Cmd + M, como en Genymotion.

Alternativamente, siempre puede enviar una pulsación de botón de menú usando adb en un terminal:

 adb shell input keyevent KEYCODE_MENU 

También tenga en cuenta que el acceso directo del botón de menú no es un requisito estricto, sino que es el comportamiento predeterminado proporcionado por la clase Java de ReactActivity (que se utiliza de forma predeterminada si creó el proyecto con react-native init ). Aquí está el código relevante de onKeyUp en ReactActivity.java :

 if (keyCode == KeyEvent.KEYCODE_MENU) { mReactInstanceManager.showDevOptionsDialog(); return true; } 

Si agrega React Native a una aplicación existente ( documentación aquí ) y no está utilizando ReactActivity , tendrá que conectar el botón de menú de manera similar. También puede llamar a ReactInstanceManager.showDevOptionsDialog través de cualquier otro mecanismo. Por ejemplo, en una aplicación en la que estoy trabajando, agregué un elemento de menú de la barra de acciones de dev-only que abre el menú, ya que me parece más conveniente que agitar el dispositivo cuando se trabaja en un dispositivo físico.

'Ctrl + m' funciona para Windows en el emulador de Android para que aparezca el menú React-Native developer.

No se pudo encontrar el documentado en ninguna parte. Encontré mi camino aquí, adivinó el resto … Buen dolor.

Por cierto: OP: No mencionaste en qué OS estabas.

  • Reaccionar localizaciones nativas: Variable global
  • ¿Cómo incluir archivos '.jar' en React-native para Android?
  • React Native - initialProperties Android
  • React-native lento en Android 5.1.1 pero grande en viejo 5.1
  • ReactNative - Cómo obtener la instancia de actividad a partir de la versión 0.29
  • La llamada de Twilio no funciona en iOS y Android en react-native
  • React Native & okhttp en Android - Establecer User-Agent
  • React-native: comando no encontrado
  • Opciones viables para ejecutar NodeJS en Android (Ago 2017)
  • Reaccionar listview nativo no se desplaza
  • ¿Cómo tener un gradiente transparente sobre una imagen en React iOS nativo?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.