我正在开发一个跨平台的React Native移动应用程序。我在开发时正在编写console.log语句。我想在默认的Android模拟器中运行Android应用时在Chrome中看到这些日志记录语句。根据{{3}},我只需要“摇动设备”。我如何在Android模拟器中执行此操作?
要访问应用内开发者菜单:
在iOS上摇动设备或在模拟器中按控制键+⌘+ z。 在Android上摇动设备或按硬件菜单按钮(在较旧的>设备和大多数模拟器中可用,例如在genymotion中,您可以按⌘+ m到>模拟硬件菜单按钮点击)
答案 0 :(得分:194)
在模拟器中运行React Native,
按 ctrl + m (对于Linux,我认为对于Windows,它是相同的,对于Mac OS,⌘ + m X)
或在终端中运行以下内容:
adb shell input keyevent 82
答案 1 :(得分:153)
在Android模拟器的应用中,在OSX上按Command + M
或在Linux和Windows上按Ctrl + M
。
答案 2 :(得分:74)
如果您使用的是Android Studio 2.0附带的新模拟器,则菜单键的键盘快捷键现在为Cmd + M,就像在Genymotion中一样。
或者,您始终可以使用终端中的adb
发送菜单按钮:
adb shell input keyevent KEYCODE_MENU
另请注意,菜单按钮快捷方式不是严格要求,它只是ReactActivity
Java类提供的默认行为(如果您使用react-native init
创建项目,则默认使用该类) 。以下是onKeyUp
中ReactActivity.java
的相关代码:
if (keyCode == KeyEvent.KEYCODE_MENU) {
mReactInstanceManager.showDevOptionsDialog();
return true;
}
如果您要将React Native添加到现有应用(documentation here)并且未使用ReactActivity
,则需要以类似的方式挂起菜单按钮。您也可以通过任何其他机制呼叫ReactInstanceManager.showDevOptionsDialog
。例如,在我正在处理的应用程序中,我添加了一个仅启用操作栏的菜单项,用于显示菜单,因为我发现在物理设备上工作时比摇动设备更方便。
答案 3 :(得分:21)
' Ctrl + m'适用于Android模拟器中的Windows ,以显示React-Native开发人员菜单。
无法在任何地方找到记录。 找到了我的路,猜到了其余的......好悲伤。
顺便说一下:OP:你没有提到你所使用的操作系统。
答案 4 :(得分:9)
OSX的'Command + M'对我有用。
答案 5 :(得分:7)
答案 6 :(得分:5)
在开发响应本机应用程序时,我们在终端上玩了很多
所以我在 package.json 文件中的脚本中添加了一个脚本
“菜单”:“ adb shell输入keyevent 82”
然后我点击 $纱线菜单
菜单显示在模拟器上 它将通过ADB将键码82转发给仿真器 不是最佳方式,但我喜欢它,并觉得可以分享。
答案 7 :(得分:4)
在MAC上使用command + m(cmd + M)
。还make sure that you are accessing your application while you try to access the Debug Menu
即。您的应用必须正在运行,否则Cmd + M
将返回通常的普通电话菜单。
答案 8 :(得分:3)
我在Mac OS上,因此当我按Command时,它将启用缩放选项。 这是我的解决方法
Settings
标签-> General
标签-> Send keyboard shortcuts to
字段Virtual device"
将焦点放在仿真器上并按Command + M之后,将显示开发菜单。
答案 9 :(得分:1)
在linux上ctrl + m应该可以工作但它不能解决问题点击(...)(它的扩展控件)然后关闭那个窗口。现在你可以通过ctrl + m打开菜单。然后:
点击(...)(其扩展控件)
关闭扩展控件
CTRL + M
答案 10 :(得分:0)
适用于Windows笔记本电脑 fn Key + Control + m
答案 11 :(得分:0)
这可能不是直接的解决方案,但是我创建了一个库,该库允许您在开发模式下使用三指触摸而不是摇动来打开开发菜单
https://github.com/pie6k/react-native-dev-menu-on-touch
您只需要将应用程序包装在其中:
从'react-native-dev-menu-on-touch'导入DevMenuOnTouch; //或:从'react-native-dev-menu-on-touch'导入{DevMenuOnTouch}
class YourRootApp extends Component {
render() {
return (
<DevMenuOnTouch>
<YourApp />
</DevMenuOnTouch>
);
}
}
当您必须在真实设备上调试并且有同事坐在您旁边时,这真的很有用。
答案 12 :(得分:0)
我正在尝试通过adb install -r -d <app-release>.apk
?
确保您正在运行 debug 构建,然后菜单将通过快捷方式或CLI起作用。