react-native android 打包步驟react
<一>、生成簽名文件(應用身份證)android
1.使用keytool命令 keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
算法
參數說明:react-native
-genkeytomcat
-alias tomcat(別名)數據結構
-keypass 123456(別名密碼)app
-keyalg RSA(算法)gradle
-keysize 1024(密鑰長度)ui
-validity 365(有效期,天單位)spa
-keystore D:/keys/tomcat.keystore(指定生成證書的位置和證書名稱)
-storepass 123456(獲取keystore信息的密碼)
其中 my-release-key.keystore 是生成的簽名文件
(簽名文件也能夠生成到指定的文件夾:例如在D:盤新建一個文件夾appkey 在該文件下打開cmd窗口而後執行keytool命令)
會生成一個配置參數選擇界面
完成後,會在當前目錄(appkey)生成一個簽名文件:文件後綴名爲.keystore
<二>、配置gradle全局變量
1.打開adminstor/.gradle/gradle.properties
2.寫入:
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore MYAPP_RELEASE_KEY_ALIAS=my-key-alias MYAPP_RELEASE_STORE_PASSWORD=***** MYAPP_RELEASE_KEY_PASSWORD=*****
3.把簽名文件複製到 react native項目的android\app下
而後編輯項目目錄下的android/app/build.gradle,添加以下的簽名配置:
<三>、生成帶簽名的APK包(製做APK階段)
1.在項目的android/app下有一個react.gradle文件的狀況
項目根目錄執行:
cd android
gradlew assembleRelease
2.在項目的android/app下沒有react.gradle文件
項目根目錄執行
mkdir -p android\app\src\main\assets(該命令會在android\app\src\main 下生成assets文件夾)
react-native bundle --platform android --dev false --entry-file index.android.js \ --bundle-output android/app/src/main/assets/index.android.bundle \ --assets-dest android/app/src/main/res/
(完成後,在項目的android\app\src\main\assets下就會生成兩個文件)
3.進入到android 目錄 執行:
gradlew assembleRelease (會在android\app\build\outputs\apk路徑下生成app-release.apk,這個就是要發佈的apk)
4.若是想從新再更新發布,你能夠先使用
gradlew clean (清理一下上次打包的)