1. 生成Android签名证书
//打开文件夹
huanliu@huandeMacBook-Pro Desktop % cd /Users/huanliu/Desktop/0721
//生成证书,其中mykey-alias为自定义的别名,mykey.keystore自定义的别名
keytool -genkey -alias mykey-alias -keyalg RSA -keysize 2048 -validity 36500 -keystore mykey.keystore
//查看该证书
keytool -list -v -keystore androidKey.keystore
2.设置gradle变量
- 将你的签名证书copy到 android/app目录下。
- 编辑~/.gradle/gradle.properties或../android/gradle.properties(一个是全局gradle.properties,一个是项目中的gradle.properties,大家可以根据需要进行修改) ,加入如下代码:
MYAPP_RELEASE_KEY_ALIAS=mykey-alias //证书别名
MYAPP_RELEASE_KEY_PASSWORD=123456 //key密码
MYAPP_RELEASE_STORE_PASSWORD=123456 //口令密码
MYAPP_RELEASE_STORE_FILE=mykey.keystore //签名证书名
3.在gradle配置文件中添加签名配置
编辑 android/app/build.gradle文件添加如下代码:
defaultConfig {
applicationId "com.awesomeproject"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "1.0.0"
}
signingConfigs {
debug {
storeFile file('debug.keystore')
storePassword 'android'
keyAlias 'androiddebugkey'
keyPassword 'android'
}
release {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
buildTypes {
debug {
signingConfig signingConfigs.debug
}
release {
signingConfig signingConfigs.release
minifyEnabled enableProguardInReleaseBuilds
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
注意把versionName版本号设置为3位如1.0.0,用于codepush推送
4.设置软件名称
在android/app/src/res/valuse/strings.xml中修改应用名称、添加codepushkey
<resources>
<string name="app_name">BeginReact</string>
<string moduleConfig="true" name="CodePushDeploymentKey">okev3y9Xofpxi5L4tx8S54ry-0LIDlOLkMrYAc</string>
</resources>
5.签名打包APK
terminal进入项目下的android目录,运行如下代码:
./gradlew assembleRelease
6.apk包输出位置
android/app/build/output/apk
中找到对应的debug和release包
网友评论