均在Mac环境下.
按照官方教程配置下来, 在输入指令
react-native run-android
时, 出现
Downloading https://services.gradle.org/distributions/gradle-2.4-all.zip
,
过一段时间后提示错误
Exception in thread "main" java.net.ConnectException: Operation timed out
,
意思是你撞防火墙了, 需要在终端设置代理, 再继续.如果出现错误
A problem occurred evaluating project ':app'
.
SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
表明项目没有找到SDK. 两种方法, 一是在环境变量(.bash_profile)中加入
export ANDROID_HOME=/Users/rainer_liao/Library/Android/sdk
,
另一种是在你的react-native项目的文件android/下新建一个文件local.properties, 内容是
sdk.dir = /Users/USERNAME/Library/Android/sdk
,
USERNAME是你OSX的userName.
第一种方法我没有成功, 可能是环境变量没有生效, 使用了source也没用, 不知道是不是之前配置了iterms的原因. anyway, 第二种方法是确切可行的.我使用的是小米手机, 要打开悬浮窗权限. 参照这里
http://jingyan.baidu.com/article/f25ef25466c0fc482d1b824d.html我没有使用模拟器, 直接上的真机. 真机需要开启USB调试, 并运行
adb reverse tcp:8081 tcp:8081
. 有可能会出现
zsh: command not found: adb
的情况, 参照这里去解决
http://stackoverflow.com/questions/10303639/adb-command-not-found
Finally, 终于可以跑RN的Hello World了