开发环境配置:
- 安装 Xcode / Android Studio / Webstorm(VSCode)
- 安装git(Mac OSX 系统自带有git)
- 安装zsh
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
- 安装Homebrew / Node / Yarn / Watchman / react-native-cli
[参考:搭建RN环境]
运行:
- 在iOS模拟器中运行 react-native run-ios ,
可指定模拟器运行 react-native run-ios --simulator 'iPhone 8 Plus' 输入 xcrun simctl list devices 可查看所有支持的模拟器
如果报错执行: sudo xcode-select -s /Applications/Xcode.app/Contents/Developer/ 前提是已经安装Xcode
- 在iOS真机运行 react-native run-ios --device 'name'
name为手机【设置】-【通用】-【关于本机】-【名称】,可不用写
如果运行报错,提示 npm install -g ios-deploy 终端输入 sudo npm install -g ios-deploy --unsafe-perm=true
然后再执行上面的运行命令
- Xcode编译、运行、打包RN项目
1. Xcode编译卡顿 running x of x custom shell scripts 长时间卡住: Target - Build Phases - 展开然后勾选选项 Run scripts only when installing
2. Edit Scheme(Comand + <),选择Archive的build Configuration,若其他的.xcodeproj - Info - Configuration不存在则需要添加对应项,名称必须保持一致
3. Project - info - Configurations 下增加版本配置项, 在Target - Build Setting下会相应生成对应的版本配置选项,可自行定义AppIcon、Asset、Product Name等。也可以执行第4步自定义增加配置内容
4. 在Target - Buid Setting - 点击’+’号可以添加User-Defined string.然后在info.plist文件内配置时使用。
- 在安卓模拟器运行 react-native run-android
- 打包APK
配置java环境(1.7 or later) 下载安装Java SDK包
## [*卸载java]
## [sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
## sudo rm -fr /Library/PreferencesPanes/JavaControlPanel.prefPane
## sudo rm -fr ~/Library/Application\ Support/Java
## 从finder中进入 /Library/Java/JavaVirtualMachines,然后删除jdk1.8.xxx]
配置gradle环境 brew install gradle 或者 网上下载安装(需要自己配置环境变量啥的)
配置Android Studio 3.0 的Gradle
1.下载gradle-4.1-all.zip包(https://services.gradle.org/distributions/ 下载最新的all.zip就行)
2.将zip放在任意目录下:/Users/taodai/Library/Android/gradlezip/gradle-4.1-all.zip
3.将gradle-wrapper.properties中的distributionUrl进行修改
distributionUrl=file\:/Users/usr_name/Library/Android/gradlezip/gradle-4.1-all.zip
[*将项目根目录下的build.gradle中的gradle版本改为3.0.1 // 可不修改]
[*在Files - Settings中我们可以找到Gradle的配置,在项目级别的gradle设置中,如果选择了下面的local gradle distribution // 可不修改]
使用Android Studio新建一个项目,拷贝local.properties文件到RN的android目录下
终端切到RN项目的android目录下,执行./gradlew clean (打包前必需)
打release离线包 ./gradlew assembleRelease
通过USB直接装release包到手机 ./gradlew installRelease
通过USB直接装debug包到手机 ./gradlew installDebug
配置夜神模拟器
## 1.cd到夜神app安装目录下: cd /Applications/Nox\ App\ Player.app/Contents/MacOS
## 2.绑定设备 ./adb connect 127.0.0.1:62001
## 3.查看是否绑定成功 lsof -i tcp:62001
## 4.查看设备,重启模拟器 ./adb devices
运行react-native run-android 报错:
adb server version (32) doesn't match this client (39); killing... 表示模拟器的adb和Android SDK的adb版本不一致
1.cd到模拟器安装目录下执行 ./adb -version 可查看adb版本
/Applications/Nox\ App\ Player.app/Contents/MacOS
2.cd到Android SDK目录下执行./adb -version可查看adb版本
~/Library/Android/sdk/platform-tools
3.将模拟器路径下的adb替换为sdk/platform-tools下的adb,重启模拟器即可
END
gitlab生成ssh key:
ssh-keygen -t rsa -C "xxxxx@163.com" -b 4096
cat ~/.ssh/id_rsa.pub