1、生成一個簽名密碼
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
2、下載curl.exe文件放在項目根目錄中。
3、找到路徑E:\Projects\APP\YDJW\android\app\src\main,並在改目錄下新建assets文件夾
4、在工程目錄下將index.android.bundle下載並保存到assets資源文件夾中
curl -k “http://localhost:8081/index.android.bundle”>android/app/src/main/assets/
index.android.bundle
這句命令重點是如果assets目錄中不存在該文件,則打包apk在執行時顯示空白
5、添加gradle的android keystore配置。打包的apk在未簽名的情況下,在手機中(非root)是不允許安裝的
在build.gradle(E:\Projects\APP\YDJW\android\app)文件中,添加如下代碼
//簽名
signingConfigs{
release{
storeFile file("E://Projects/APP/YDJW/my-release-key.keystore")
storePassword "你自己設置的密碼"
keyAlias "自己的設置的keyAlias"
keyPassword "你自己設置的密碼"
}
}
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
signingConfig signingConfigs.release //添加這句話引用簽名配置
}
}
6、啟用Proguard代碼混淆來縮小apk文件的大小
build.gradle(E:\Projects\APP\YDJW\android\app)文件中,找到 如下代碼賦值為true
def enableProguardInReleaseBuilds = true
7、配置gradle環境,gradle版本要跟項目中的版本一致,不一致會報錯
下載地址:http://services.gradle.org/distributions/(找自己對應的版本)
8、在/android/目錄中執行gradle assembleRelease命令,打包后的文件有android/app/build/outputs/apk目錄中。如果打包碰到問題可以先執行gradle clean清理一下