Aha*_*ain 6 android apk signed-apk
请注意,我们已经在Android SDK的帮助下通过命令行创建了一个apk文件.现在,因为上传到谷歌播放商店需要apk签名.我们该怎么做
bor*_*man 14
按照以下命令使 apk Play 商店准备就绪:
第 1 步:创建一个未签名的 apk:
./gradlew assembleRelease
Run Code Online (Sandbox Code Playgroud)
第 2 步:创建一个签名的 apk:
jarsigner -keystore YOUR_KEYSTORE_PATH -storepass YOUR_KEYSTORE_PASSWORD app/build/outputs/apk/release/app-release-unsigned.apk YOUR_KEY_ALIAS
Run Code Online (Sandbox Code Playgroud)
第 3 步:对 apk 进行压缩对齐:
your_android-sdk_path/android-sdk/build-tools/your_build_tools_version/zipalign -v 4 app/build/outputs/apk/release/app-release-unsigned.apk release.apk
Run Code Online (Sandbox Code Playgroud)
小智 10
首先,您需要生成私有签名密钥
keytool -genkey -v -keystore my-release-key.keystore -alias my-key-alias -keyalg RSA -keysize 2048 -validity 10000
Run Code Online (Sandbox Code Playgroud)
此命令将提示您输入密钥库和密钥的密码(也适用于其他一些字段).请记住随时保持密钥库文件的私密性.
接下来,您需要设置gradle
my-release-key.keystore您在步骤1中生成的地方android/app 更新你的~/.gradle/gradle.properties下面android/app并添加以下内容
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=<The password you choose earlier with the keytool>
MYAPP_RELEASE_KEY_PASSWORD=<The password you choose earlier with the keytool>
Run Code Online (Sandbox Code Playgroud)最后你需要更新你的android/app/build.gradle.
android {
...
defaultConfig { ... }
signingConfigs {
release {
if (project.hasProperty('MYAPP_RELEASE_STORE_FILE')) {
storeFile file(MYAPP_RELEASE_STORE_FILE)
storePassword MYAPP_RELEASE_STORE_PASSWORD
keyAlias MYAPP_RELEASE_KEY_ALIAS
keyPassword MYAPP_RELEASE_KEY_PASSWORD
}
}
}
buildTypes {
release {
...
signingConfig signingConfigs.release
}
}
}
Run Code Online (Sandbox Code Playgroud)
现在,只需在android目录中运行以下命令,即可通过命令行生成签名版本
./gradlew assembleRelease
Run Code Online (Sandbox Code Playgroud)
然后可以在您的build/outputs/apk/release目录下找到生成的apk .
首先,您需要一个密钥库来开始该过程。您将使用此密钥库对apk进行签名,并且您需要使用相同的密钥库进行签名以进行将来的更新。在此处了解有关密钥库的更多信息:https : //developer.android.com/studio/publish/app-signing#generate-key
生成密钥库后,您应该使用jarsigner实用程序(在JDK文件夹中可用)
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore your-release-key.keystore android-release-unsigned.apk alias -storepass password
Run Code Online (Sandbox Code Playgroud)
zipalign工具(位于android SDK文件夹中)来验证apk。path-to-android-sdk/build-tools/version/zipalign -v 4 android-release-unsigned.apk android-prod-released-signed.apk
Run Code Online (Sandbox Code Playgroud)
apksigner工具进行验证(可在android SDK文件夹中找到)path-to-android-sdk/build-tools/version/apksigner verify android-prod-released-signed.apk
Run Code Online (Sandbox Code Playgroud)
PS:用实际值替换路径,文件和密码
| 归档时间: |
|
| 查看次数: |
9701 次 |
| 最近记录: |