【问题标题】:APK size is too largeAPK 大小过大
【发布时间】:2017-10-06 04:12:27
【问题描述】:

您可以看到 res 文件夹只有 2.2 MB,而 APK 大小仍然是 17 MB。 lib 文件夹大小为 11 MB,所以我认为这有问题。任何人都可以建议我这样做有什么问题,以便可以减小我的 APK 大小。

【问题讨论】:

标签: android apk


【解决方案1】:

第一

android {
    // Other settings

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

第二次

  • 减少资源数量和大小。

  • 删除未使用的资源。

第三次

尽量压缩.jpg文件,可以使用TinyPng

希望这能解决你的问题

【讨论】:

【解决方案2】:

您在应用程序中使用了一些本机代码(您自己的应用程序代码或库),因此 libs 文件夹和 .so(共享对象)文件正在生成。你无法逃脱。哈哈。无论如何,您可以通过将您的 apk 拆分为不同的 CPU 架构来解决此问题。打开您的应用程序级 build.gradle 并粘贴此代码。您将获得针对不同 CPU 架构的不同 apk。

splits {
    abi {
        enable true // enable ABI split feature to create one APK per ABI
        universalApk true //generate an additional APK that targets all the ABIs
    }
}
// map for the version code
project.ext.versionCodes = ['armeabi':1, 'armeabi-v7a':2, 'arm64-v8a':3, 'mips':5, 'mips64':6, 'x86':8, 'x86_64':9]

android.applicationVariants.all { variant ->
    // assign different version code for each output
    variant.outputs.each { output ->
        output.versionCodeOverride =
                project.ext.versionCodes.get(output.getFilter(com.android.build.OutputFile.ABI), 0) * 10000000 + android.defaultConfig.versionCode
    }
}

稍后,您可以将这些 apk 上传到仅具有特定一种架构的 Play 商店。欲了解更多信息,请参考这个伟大的blog 和这个blog

【讨论】:

    猜你喜欢
    • 2016-12-11
    • 2015-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多