以下內容為在window下開發React Nativ時環境搭建及APK打包的筆記。
CSDN同步發布
環境搭建
1、安裝Node.js與Git
2、如果沒有合適的梯子,先設置鏡像
npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
3、安裝React Native命令行工具
github上下載后解壓,下載地址
在react-native-cli目錄下用git運行命令:
npm install -g react-native-cli
或者
npm install -g yarn react-native-cli
4、創建項目
react-native init 文件夾名稱
5、運行packager 進入工程目錄
react-native start
可以用瀏覽器訪問http://localhost:8081/index.android.bundle?platform=android
6、準備模擬器或真機 運行android
react-native run-android
7、gradle-2.14.1-all.zip下載慢的解決方法
- 首先 把對應版本的gradle載到本地任意一個磁盤里
- 然后拖曳這個文件夾到瀏覽器中,就會得到 file:///...的訪問地址
- 替換項目中 android/gradle/wrapper/gradle-wrapper.properties 的 distributionUrl ,
- 即 distributionUrl=file:///D:/gradle/gradle-2.14.1-all.zip (注意這里需要加上轉義字符\)
8、出現紅色提示,沒有連接上服務器,則在設置中輸入電腦本機ip地址及8081端口號:如192.168.2.1:8081
至此,示例代碼將運行在android上
打包發布(android)
1、找到路徑/android/app/src/main,并在該目錄下新建assets文件夾
2、在工程目錄下將index.android.bundle下載并保存到assets資源文件夾中,運行以下命令:
curl -k "http://localhost:8081/index.android.bundle" > android/app/src/main/assets/index.android.bundle
這里需先安裝curl:Windows下安裝使用curl命令
3、添加gradle的android keystore配置
//簽名
signingConfigs{ release { storeFile file("/my-release-key.keystore") storePassword "密碼" keyAlias "keyAlias的名字" keyPassword "密碼" } } buildTypes { release { minifyEnabled enableProguardInReleaseBuilds proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' signingConfig signingConfigs.release //添加這句話引用簽名配置 } }
4、啟用Proguard代碼混淆來縮小APK文件的大小
def enableProguardInReleaseBuilds = true
5、在/android/目錄中執行gradle assembleRelease命令,打包后的文件在 android/app/build/outputs/apk目錄中,例如app-release.apk。如果打包碰到問題可以先執行 gradle clean 清理一下。
這里需先安裝gradle工具(版本與android\gradle\wrapper下的一致),并配置環境變量,配置GRADLE_HOME到你的gradle根目錄當中,然后把%GRADLE_HOME%/bin(linux或mac的是$GRADLE_HOME/bin)加到PATH的環境變量。
配置完成之后,運行gradle -v,檢查一下是否安裝無誤