使用Android Studio删除未使用的资源?

问题描述 投票:14回答:2

我想从项目中删除未使用的资源以减少应用程序的大小。有效地使用Android Studio IDE有没有办法做到这一点?

android-studio android-resources
2个回答
25
投票

Android的Gradle构建系统支持Resource Shrinking :在打包的应用程序中自动删除构建时未使用的资源。除了删除项目中在运行时实际不需要的资源之外,如果应用程序实际上不需要它们,这也会从您依赖的库中删除资源。

例如,您的应用程序使用Google Play服务来访问Google云端硬盘功能,而您目前没有使用Google登录,那么这将删除登录按钮的各种可绘制资源。

注意:Resource Shrinking仅与代码收缩(例如ProGuard)一起使用。这就是它如何从库中删除未使用的资源;通常,使用库中的所有资源,只有当我们删除未使用的代码时,才会明白从剩余代码中引用了哪些资源。

要启用资源收缩,请按如下所示更新构建类型:

android {
    ...

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

谷歌最近正式推出了Android Studio 2.0,现在他们在IDE中提供了一个选项。

右键单击app - > Refactor - > Remove Unused Resources

它会提示

enter image description here

选中之前的确认操作框,以便您也可以删除未使用的@id声明。

  • 在APK优化方面,考虑Selecting a Format事实。
  • 使用WebP图像提供比JPEG或PNG更好的压缩。 Android 4.0(API级别14)及更高版本支持有损WebP图像,Android 4.3(API级别18)及更高版本支持无损且透明的WebP图像。

0
投票

在android工作室。您可以使用Android Lint。它将显示“字符串,资源,导入..”不使用

Analyze -> Inspect Code -> Whole Project -> OK
© www.soinside.com 2019 - 2024. All rights reserved.