1. 生成一个签名密钥
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
最后它会生成一个叫做my-release-key.keystore的密钥库文件
2. 新建assets文件夹
找到路径/android/app/src/main,并在该目录下新建assets文件夹
3. index.android.bundle
在工程目录下将index.android.bundle下载并保存到assets资源文件夹中
curl -k "http://localhost:8081/index.android.bundle" > android/app/src/main/assets/index.android.bundle
这句命令是重点,如果assets目录中不存在该文件,则打包的apk在执行时显示空白。
Windows下安装使用curl命令:点击
4. android keystore配置
打包的apk在未签名的情况下,在手机中(非root)是不允许安装的.
在build.gradle文件中;
//签名
signingConfigs{
release {
storeFile file("/my-release-key.keystore")
storePassword "密码"
keyAlias "keyAlias的名字"
keyPassword "密码"
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.release //添加这句话引用签名配置
}
}
5. 启用Proguard代码混淆
def enableProguardInReleaseBuilds = true
6. 打包
在/android/目录中执行
gradle assembleRelease
打包后的文件在 android/app/build/outputs/apk目录中