Android Studio:如何使用Gradle生成签名的apk?

我search了谷歌和所以但找不到我的答案。

这是我第一次使用Gradle系统,现在我正在生成一个签名APK上传到谷歌播放(项目是从Eclipse导入)的点。

现在我已经阅读了这里的部分http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Building-and-Tasks ,你应该添加signingConfigs到你的build.gradle

我已经添加了这些行,现在我看到你需要运行./gradlew assembleRelease但是在我的cmd中运行这个返回“gradle”不被识别为内部或外部命令,可操作的程序或batch file。 我也试图右键单击build.gradle并运行它,说这是成功的,但一旦我看在build / apk文件夹中只有一个名为app-debug-unaligned.apk

那么如何使用Gradle系统生成已签名的apk?

根据buildType生成构build有三种方法。 (在你的情况下,它是释放,但它可以命名任何你想要的。)

  1. 转到Android Studio右侧面板中的Gradle Task,在Module Tasks下searchassembleRelease或者assemble(#your_defined_buildtype)

  2. 转到在左侧面板中构build变体,然后从下拉菜单中select构build

  3. 在File Explore中打开项目根目录,打开cmd / terminal并运行:

    Linux: ./gradlew assembleRelease or assemble(#your_defined_buildtype)

    Windows: gradlew assembleRelease or assemble(#your_defined_buildtype)

如果你想做一个版本构build(只),你可以使用生成 > 生成签名的apk 。 对于其他构buildtypes,只有上述三个选项可用。

你可以在你的module/build目录中find生成的APK,其中包含生成types名称。

可以使用任何现有的Android Studio gradle项目,并从命令行编译/签名,无需编辑任何文件。 这使得在版本控制中存储项目非常好,同时保持密钥和密码的分离:

 ./gradlew assembleRelease -Pandroid.injected.signing.store.file=$KEYFILE -Pandroid.injected.signing.store.password=$STORE_PASSWORD -Pandroid.injected.signing.key.alias=$KEY_ALIAS -Pandroid.injected.signing.key.password=$KEY_PASSWORD 

你可以使用这个代码

 android { ... signingConfigs { release { storeFile file("../your_key_store_file.jks") storePassword "some_password" keyAlias "alias_name" keyPassword "key_password" } } buildTypes { release { signingConfig signingConfigs.release } } ... } 

然后从你的terminal运行

 gradle assembleRelease 

你会得到apk的

您-Android的应用程序/build设/输出/ APK /你的,Android的应用程序,release.apk

生成菜单>生成签名的apk