Estou trabalhando em um aplicativo móvel React Native para várias plataformas. Estou escrevendo instruções console.log à medida que desenvolvo. Quero ver essas instruções de log no Chrome enquanto estou executando o aplicativo Android no emulador padrão do Android. De acordo com os documentos do Facebook, só preciso "agitar o dispositivo". Como faço isso no emulador do Android?
Para acessar o menu do desenvolvedor no aplicativo:
No iOS, agite o dispositivo ou pressione as teclas + ⌘ + z no simulador. No Android, agite o dispositivo ou pressione o botão do menu de hardware (disponível em dispositivos mais antigos e na maioria dos emuladores, por exemplo, no genymotion, você pode pressionar ⌘ + m para> simular o clique no botão do menu de hardware)
fonte
Com um React Native em execução no emulador,
pressione ctrl+ m(para Linux, suponho que seja o mesmo para Windows e ⌘+ mpara Mac OS X) ou execute o seguinte no terminal:
fonte
adb -s <device id/serial> shell input keyevent 82
. Eu uso isso ao usar um emulador e um dispositivo físico.Se você estiver usando o novo emulador que acompanha o Android Studio 2.0, o atalho do teclado para a tecla de menu agora é Cmd + M, como no Genymotion.
Como alternativa, você sempre pode enviar um botão de menu pressionando usando
adb
em um terminal:Observe também que o atalho do botão de menu não é um requisito estrito, é apenas o comportamento padrão fornecido pela
ReactActivity
classe Java (que é usada por padrão se você criou seu projetoreact-native init
). Aqui está o código relevante a partironKeyUp
deReactActivity.java
:Se você estiver adicionando o React Native a um aplicativo existente ( documentação aqui ) e não estiver usando
ReactActivity
, será necessário conectar o botão de menu da mesma maneira. Você também pode ligarReactInstanceManager.showDevOptionsDialog
através de qualquer outro mecanismo. Por exemplo, em um aplicativo em que estou trabalhando, adicionei um item de menu da Barra de Ação somente para desenvolvedores que exibe o menu, pois acho mais conveniente do que agitar o dispositivo ao trabalhar em um dispositivo físico.fonte
ReactActivity
e não ligou o botão de menu por outros meios.'Ctrl + m' funciona para Windows no emulador do Android para abrir o menu de desenvolvedor React-Native.
Não foi possível encontrar isso documentado em nenhum lugar. Encontrei o meu caminho até aqui, adivinhei o resto ... Que pena.
A propósito: OP: Você não mencionou em qual SO estava.
fonte
No Linux, você clica nos três pontos "..." ao lado do emulador, em Sensores virtuais, marque "Mover" e tente mover rapidamente as coordenadas x, y ou z.
fonte
'Command + M' para OSX está funcionando para mim.
fonte
Como estou no Mac OS, ao pressionar Command, ative a opção de zoom. Aqui está a minha solução
Settings
guia ->General
guia ->Send keyboard shortcuts to
campoVirtual device"
conforme mostrado na figuraDepois desse foco no emulador e pressione Command + M, o menu dev será exibido.
fonte
Use
command + m(cmd + M)
no MAC. Além disso,make sure that you are accessing your application while you try to access the Debug Menu
seu aplicativo deve estar em execução, caso contrárioCmd + M
, apenas retornará o menu normal do telefone.fonte
Enquanto desenvolvemos aplicativos nativos reativos, brincamos tanto com o terminal
então eu adicionei um script nos scripts no arquivo package.json
"menu": "adb shell input keyevent 82"
e eu bati no menu $ yarn
para que o menu apareça no emulador, ele encaminhará o código de chave 82 para o emulador via ADB, não da maneira ideal, mas eu gosto e sinto que posso compartilhá-lo.
fonte
no linux, o ctrl + m deve funcionar, mas não resolve o problema, clique no (...) (seus controles estendidos) e feche essa janela. agora você pode abrir o menu com o ctrl + m. então:
clique no (...) (seus controles estendidos)
fechar controles estendidos
ctrl + m
fonte
Pode não ser uma solução direta, mas eu criei uma biblioteca que permite que você use três dedos para tocar em vez de agitar para abrir o menu dev, quando estiver no modo de desenvolvimento
https://github.com/pie6k/react-native-dev-menu-on-touch
Você só precisa envolver seu aplicativo dentro de:
importar DevMenuOnTouch de 'react-native-dev-menu-on-touch'; // ou: importa {DevMenuOnTouch} de 'react-native-dev-menu-on-touch'
É realmente útil quando você precisa depurar em um dispositivo real e tem colegas de trabalho sentados ao seu lado.
fonte
Eu estava tentando criar uma versão via
adb install -r -d <app-release>.apk
🤦Verifique se você está executando a compilação de depuração , para que o menu funcione via atalho ou CLI.
fonte
Para computadores portáteis Windows, tecla fn + Control + m
fonte