我使用了react本地Android演示项目AwesomeProject,在我执行的项目中:
react-native start在第二个终端中:
react-native run-android启动webserver并安装Android。默认的and服务器配置是localhost:8081,如何修改webserver端口,以及如何更新Android项目中IP & port的记录。
编辑:
我刚刚发现在Android调试环境下可以修改ip地址,似乎"getDebugServerHost“是一个私有的API,Facebook是否提供了任何更改ip和端口的API?
发布于 2015-09-23 10:02:02
更新:查看汤姆蒂的回答当前推荐的2019年实现此操作的方法。
不幸的是,该港口目前(2015/09/23)是硬编码的。我相信这将随着时间的推移而改变,因为它已经从一个高级别的项目贡献者那里提出了一个问题。https://github.com/facebook/react-native/issues/2704
发布于 2016-10-31 17:46:49
正如OP在MossP的回答上评论的那样,现在可以使用debug_http_host共享首选项来实现这一点(参见这问题)。
因此,如果您想使用端口8082,可以将一个onCreate方法添加到您的MainActivity.java文件中,它可能如下所示:
@Override
protected void onCreate(Bundle state){
super.onCreate(state);
SharedPreferences preferences =
PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
preferences.edit().putString("debug_http_host", "localhost:8082").apply();
}当然,不要忘记导入android.content.SharedPreferences__、android.os.Bundle__和android.preference.PreferenceManager__。
这将使您的应用程序尝试访问包在所需的端口,而不是8081。
然后,您只需确保使用--port 8082启动包器(如描述的这里),您就应该已经设置好了。(除非你碰巧使用的是核素,这是另一个故事)。
请注意,直到ResponseNative0.46,这将只允许一个成功地运行应用程序,但仍然不可能将调试器实际附加到非标准端口上。当响应本机0.46时,附加调试器也应该起作用。
发布于 2018-03-20 07:12:23
正如https://facebook.github.io/react-native/docs/debugging.html#accessing-the-in-app-developer-menu中所述,
您可以通过摇动设备或在iOS模拟器的硬件菜单中选择"Shake手势“来访问开发人员菜单。您还可以在iOS模拟器中运行应用程序时使用⌘D键盘快捷方式,在运行安卓模拟器时也可以使用⌘M。另外,对于Android,您可以运行命令亚行shell输入keyevent 82来打开dev菜单(82是菜单键代码)。
所以在iOS设备上摇动它,在iOS模拟器上按下控制D,在Android模拟器上控制M,在Android设备上做adb shell input keyevent 82
然后,在打开的菜单中,转到Dev Settings、调试服务器和设备的主机端口,并编辑IP和端口。
ps:只对不生产的产品有效。
https://stackoverflow.com/questions/32735466
复制相似问题