APK瘦身

185 阅读1分钟

1 安装插件 Android Size Analyzer
2 启动资源缩减
2.1 需要开区混淆后 才可以开启资源缩减

shrinkResources true
配合minifyEnabled true 使用 都设置成true
buildTypes {
    release {
        minifyEnabled true
        shrinkResources true
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}

2.2 自定义保留要保留的资源
在res 下 创建 创建 res/raw/keep.xml
Keep 要保留的
Discard 指定要删除的
在这里插入图片描述

2.3 使用Lint 分析器
Analyze > Run Inspection By Name > 输入“unused resources”
2.4 移除未使用的备用资源
2.4.1 androidx 自己生成的一些多国家语言

defaultConfig {
    applicationId "com.example.test1"
    minSdkVersion 19
    targetSdkVersion 30
    versionCode 1
    versionName "1.0"
    multiDexEnabled true

    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

    resConfigs "zh-rCN"
}

2.5 动态库打包配置
目前大部分手机都支持 armeabi-v7a

ndk{
    abiFilters "armeabi-v7a"
}

2.5.1动态库APK分包

productFlavors{
        test1{
            dimension "default"
            ndk{
    			abiFilters "armeabi-v7a"
			}
        }

         test2{
            dimension "default"
            ndk{
    			abiFilters "arm64-v8a"
			}
        }
    }
splits{
	abi{
		enable true
		reset()
		include 'arm64-v8a','armeabi-v7a'
		universalApk true //是否打包一个包含所有的spk
	}
}

3 使用矢量图
4 不常用功能模块插件化
4 开启资源混淆 AndResGuard 第三方库