一旦把app写好之后,最后一个步骤就是打包成apk啰
文档中会提到keytool,gradlew assembleRelease。
Android打包APK
Android 把包成一个APK主要需要几个步骤:
1.产生金钥
2.将金钥设定到这个项目的 /android/app 下的build.gradle 文档
3.产生Apk档
我们来具体的说明明细吧
1.产生金钥
keytool -genkey -v -keystore RyanFactoryKey.keystore -alias RyanFactoryKey-alias -keyalg RSA -keysize 2048 -validity 10000
首先在命令窗口输入命令,然后照着指示,填入需要的资讯
输入金钥保存库密码:
重新输入新密码:
您的名字与姓氏为何?
[Unknown]: Ryan.Lu
您的组织单位名称为何?
[Unknown]:
您的组织名称为何?
[Unknown]: Ryan
您所在的城市或地区名称为何?
[Unknown]: TW.Taichuang
您所在的州及省份名称为何?
[Unknown]: Taichuang
此单位的两个字母国别代码为何?
[Unknown]: TW
CN=Ryan.Lu, OU=, O=Ryan, L=TW.Taichuang, ST=Taichuang, C=TW 正确吗?
[否]: Y
针对 CN=Ryan.Lu, OU=, O=Ryan, L=TW.Taichuang, ST=Taichuang, C=TW 产生有效期 10,000 天的 2,048 位 RSA 金钥组以及自我签署凭证 (SHA256withRSA)
输入 的金钥密码
(RETURN 如果和金钥保存库密码相同):
重新输入新密码:
[保存 RyanFactoryKey.keystore]
java keytool用法
Java 中的 keytool.exe 可以用来建立数位凭证,再将该凭证,绑到你的apk中。
-keystore 指定金钥库的名称,我指定了RyanFactoryKey.keystore
-alias 产生别名我指定了RyanFactoryKey-alias
要将自己的密码记好阿!!
完成之后,就可以产生一个RyanFactoryKey.keystore文件啰,建议将这个文件放在你的rn项目的Androidapp,与build.gradle摆在同一个目录下。
2.将金钥设定到这个项目的 /android/app 下的build.gradle 文档
接下来,就是要把金钥与这个项目,产生关连,将金钥放到设定这个项目下啰。打开你的rn项目的Androidappbuild.gradle,也是刚刚步骤一将金钥产生受,放置的同一个目录。开始编辑build.gradle啰
signingConfigs {
release {
storeFile file("RyanFactoryKey.keystore")
storePassword "123456"
keyAlias "RyanFactoryKey-alias"
keyPassword "123456"
}
}
在build.gradle的设定中,要把刚刚的产生的金钥放入。
buildTypes {
release {
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
signingConfig signingConfigs.release
}
}
然后再补一下这命令。
这就完成噜。
3.产生Apk档
然后该项目的目录下,执行
cd android && ./gradlew assembleRelease
就可以开始打包啰,顺利的话,就可以取得apk文件啰。
当然Ryan在过程中,也不是那么顺利,可以参考这篇,是我踩过的坑,希望有帮助到看倌阿。
排除问题的过程中,Ryan也使用了底操作
cd android && ./gradlew compileDebug --stacktrace
cd android && ./gradlew assembleRelease --stacktrace
可以协助确认问题的点,进而排除。
以上文章由Ryan整理,若有侵犯版权、勘误,请来信告知。