react native 安卓打包--mac環境,如果打包不成功可註意下my-release-key.keystore的位置關系(絕對路徑)
// my-release-key.keystore和my-key-alias都是可修改的名稱
1.生成簽名密鑰(keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000)
2.在項目中找到android/app/src/main目錄下創建一個叫assets的文件夾
在工程目錄下(android/app/src/main/assets),並在 此文件夾下(assets)生成index.android.bundle
(生成index.android.bundle
下面是指令(蘋果自帶curl)
curl -k ‘http://localhost:8081/index.android.bundle‘ > android/app/src/main/assets/index.android.bundle
3.添加gradle的android keystore配置(設置app文件夾下的build.gradle文件):
// 簽名 ---寫在android {}中
signingConfigs { // 放在defaultConfig{} 下面 // 以下字符串為單引號,雙引號好像會報錯(忘記了)
storeFile file(‘/Users/zhou/Desktop/demoS/my-release-key.keystore‘) // 這裏的位置是keystore在系統文件的絕對路徑位置
storePassword ‘密碼’
keyAlias ’alias名字‘
keyPassword ‘MYAPP_RELEASE_KEY_PASSWORD’
}}
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuildsproguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
signingConfig signingConfigs.release // 再加入這行代碼,添加這句話引入簽名配置,使之簽名生效
}
}
4.啟用Proguard代碼混淆來縮小apk文件的大小:
修改為true:def enableProguardInReleaseBuilds = true
5.在/android/目錄中執行gradle assembleRelease命令,打包後的文件(apk格式帶簽名的)在android/app/build/outputs/apk目錄中,如果打包碰到問題可以先執行gradle clean清理一下。
react native 安卓打包--mac環境,如果打包不成功可註意下my-release-key.keystore的位置關系(絕對路徑)