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

我想从我的项目中删除未使用的资源,以减less应用程序的大小。 有没有什么办法有效地使用Android Studio IDE?

Solutions Collecting From Web of "使用Android Studio删除未使用的资源?"

Android的Gradle构build系统支持Resource Shrinking :在构build时,在打包的应用程序中自动删除未使用的资源。 除了删除项目中运行时实际不需要的资源外,还会从库中删除资源,这取决于应用程序是否确实需要这些资源。

例如,您的应用程序正在使用Google Play服务来访问Google云端硬盘function,而您目前没有使用Googlelogin,则会删除“login”button的各种可绘制资源。

注意: 资源缩小仅适用于代码缩小(如ProGuard)。 这就是它可以从库中删除未使用的资源; 通常情况下,库中的所有资源都被使用,只有当我们删除不用的代码时,才能看到剩余的代码引用了哪些资源。

要启用资源收缩,请按如下所示更新您的构buildtypes:

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

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

右键单击应用程序 – >重构 – >删除未使用的资源

它会提示

在这里输入图像说明

选中确认操作前的checkbox,以便您可以摆脱未使用的@id声明。

  • 就APK优化而言,考虑select格式事实。
  • 使用WebP图像比JPEG或PNG提供更好的压缩。 Android 4.0(API级别14)及更高版本支持有损WebP图像,Android 4.3(API级别18)及更高级别支持无损透明WebP图像。

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

 Analyze -> Inspect Code -> Whole Project -> OK 
  1. android studio是否显示未使用的应用程序或使用的应用程序的调用堆栈? 对我来说,调用堆栈很重要。 它显示吗?
  2. 它是否在DLL的作品…这是dynamic库? 例如:我有4个应用程序和10个通用库。 所有4个应用程序只使用6个库,不使用4个库,这是一个未使用的资源,应删除,以使系统更加轻松。 Android Studio 2.0是否适用于dll?