为什么IntelliJ IDEA在Gradle项目中只创建未对齐的APK?

时间:2014-07-15 16:00:40

标签: android intellij-idea

我一直在使用IDEA 13.1并用它创建了一个Gradle项目。当我编译应用程序并启动它时,它只会创建未对齐 APK。

使用Android Studio打开相同的项目,并重建它并启动应用程序,生成未对齐和常规未签名的APK。

这是IntelliJ IDEA中的错误吗?如果没有,我在哪里可以设置它总是生成一个常规的,对齐的APK?

1 个答案:

答案 0 :(得分:0)

对齐/输出不依赖于IDE ,而是依赖于您的gradle配置。 IntelliJ和AndroidStudio都只是在后台运行Gradle。

默认情况下,自动生成的Gradle文件build.gradle不会运行zipAlign任务,即对齐apk的任务。所以你最终得到一个未对齐的apk。

您可以通过添加zipAlignEnabled true属性轻松更改它,如下所示:

    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        zipAlignEnabled true
    }

但是,让我提醒您,存档对齐只是一种优化,它不会改变您的应用。

另外,来自docs

  

警告:只有在使用您的私钥对.apk文件进行签名后才能执行zipalign。如果您在签名之前执行zipalign,则签名过程将撤消对齐。

有关详细信息,请查看this threadthis threaddocs