如何在没有 android studio 的情况下签署 android apk
Posted
技术标签:
【中文标题】如何在没有 android studio 的情况下签署 android apk【英文标题】:How to sign android apk without android studio 【发布时间】:2017-01-07 18:11:34 【问题描述】:我发现很多在这个问题上令人困惑的答案:我如何签署(发布/调试)android 应用程序没有 Android Studio(例如签署 ionic/cordova/ phonegap 应用程序)?
【问题讨论】:
【参考方案1】:您可以在 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
--> 使用 CMD 生成签名的 APK。
gradlew assemblerelease.
【讨论】:
【参考方案2】:因此,迄今为止正确而简单的答案是:
cd 到您的项目平台/android 文件夹中(如果不是 cordova/ionic 构建,可能只是您的主项目文件夹)。您应该在该文件夹中找到您的主要 build.gradle 文件。
通过调用创建密钥库文件:
keytool -genkey -v -keystore继续填写 和密码(将它们写在您可以找到的地方!)
创建两个文件名为:debug-signing.properties
和 release-signing.properties
为两者输入以下配置(您可以稍后更改密钥库以加强发布构建的安全性...):
keyAlias=ALIAS_NAME keyPassword=ALIAS_PASSWORD storeFile=KEYSTORE_FILE_NAME storePassword=KEYSTORE_PASSWORD`运行构建...
【讨论】:
上述命令记录在developer.android.com/studio/build/…中。【参考方案3】:Ionic 团队对此查询给出了很好的想法,您可以点击此链接,您可以在 10 分钟内完成此操作
http://ionicframework.com/docs/guide/publishing.html
但是你需要 android sdk 来做到这一点......
设置ANDROID_HOME
窗户
set ANDROID_HOME=Path to sdk
基于 Linux 的系统
export ANDROID_HOME=Path to sdk
要遵循的步骤
创建发布应用
创建密钥库
签署 APK
【讨论】:
问题是要弄清楚它,所以我添加了这个答案,在签署APK之前,需要删除一些插件,这些事情不应该避免...... 当然,你也想设置路径包含sdk的platforms和tools文件夹...有很多先决条件,但是如何设置keystore是缺少的部分【参考方案4】:我遇到了同样的问题。最简单的解决方案是通过 DOS 命令 keytool 和 jarsigner 回到基础。请注意,这些文件必须位于 jdk 目录中才能正常工作。
只需要做两个动作: - 使用 keytool 创建您的密钥库和证书:第一个证书是在您创建单个密钥库时创建的。然后,将通过使用 same 密钥库名称再次调用 keytool 命令创建其他证书 - 然后使用 jarsigner。在准备 jarsigner 命令时,首选区分 jar 输入文件名和生成的签名 jar 文件名
【讨论】:
以上是关于如何在没有 android studio 的情况下签署 android apk的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有 SDK 的情况下“下载”Android Studio IDE?
如何在没有 USB 数据线的情况下使用 Android Studio 在手机中安装 Android
如何在不下载 Android Studio 的情况下下载 Android SDK?
如何在没有 Android Studio 的情况下使用模拟器在 VS 代码中安装颤振?