最近在尝试使用 React Native 作一些东西,发现真机调试仍是有一些坑存在的。react
首先,你要让调试用电脑和你的手机必须处于相同的 WiFi 网络中下android
打开 iOS 项目的 AppDelegate.m
文件react-native
更改 jsCodeLocation
中的 localhost
改为你电脑的局域网IP地址服务器
在 Xcode
中,选择你的手机做为目标设备,Run
便可网络
能够经过晃动设备来打开开发菜单(重载、调试等)ui
在 Android 设备上打开 USB debugging
并链接上电脑启动调试。spa
在真机上运行的方法与在模拟器上运行一致,都是经过 react-native run-android
来安装而且运行你的 React Native 应用。debug
若是不是 Android 5.0+ (API 21) ,那么就没办法经过 adb reverse
进行调试,须要经过 WiFi 来链接上你的开发者服务器调试
让调试用电脑和你的手机必须处于相同的 WiFi 网络中下code
打开震动菜单 (摇动设备)
前往 Dev Settings
选择 Debug server host for device
输入调试用电脑的局域网IP
点击 Reload JS
在 Xcode7 指定真机运行,结果报出以下错误:
Undefined symbols for architecture arm64: "_RCTSetLogFunction", referenced from: -[PropertyFinderTests testRendersWelcomeScreen] in PropertyFinderTests.o ld: symbol(s) not found for architecture arm64 clang: error: linker command failed with exit code 1 (use -v to see invocation)
一开始觉得的 React Native 库的问题,查找了一下资料,研究了一下,原来在 Build Setting
中设置 Dead Code Stripping
为 No
(以下图)就能够解决了