React Native项目打包离线安卓apk
1、生成签名秘钥
执行生成命令(需要在jdk的bin目录下执行)
生成命令
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
如果命令最后出错:keytool 错误: java.io.FileNotFoundException: MyAndroidKey.keystore (拒绝访问).那么就是权限的问题,解决方法:
(1):更改jdk目录(出错的话你的jdk应该在C盘)。(2):用管理员权限启动CMD窗口。
然后根据提示填写各样信息,尽量填写完整,我的如下图:
1557373320(1).jpg秘钥生成完成会有一个my-release-key.keystore的密钥库文件
1557373386(1).jpg2、配置gradle全局变量
在C:\Users\用户名\ .gradle下创建gradle.properties文件、添加如下内容:
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=您设置的密码
MYAPP_RELEASE_KEY_PASSWORD=您设置的密码
1557373824(1).jpg
3、给自己的RN项目配置签名
将签名文件my-release-key.keystore放在、react native项目的android\app下
1557378285(1).jpg编辑android/app中的build.gradle文件,添加如下内容:
signingConfigs {
release {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
signingConfig signingConfigs.release
}
}
这里要看好添加代码的位置
编辑android/gradle.properties文件,添加如下内容:
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=您设置的密码
MYAPP_RELEASE_KEY_PASSWORD=您设置的密码
1557378513(1).jpg
最后打包apk
#进入安卓目录
cd android
#清理缓存
gradlew clean
#执行打包
gradlew assembleRelease
1557378583(1).jpg
网友评论