【问题标题】:How to exclude resources from android shrinkResources?如何从 android shrinkResources 中排除资源?
【发布时间】:2017-08-20 21:19:55
【问题描述】:

如何排除所有/res/raw/*.wav 文件的收缩?

buildTypes {
    release {
        shrinkResources true
        minifyEnabled true
    }
}

【问题讨论】:

  • 好的,我正在搜索关键字“排除”,但正确的术语似乎是“保留或丢弃”。
  • 只是出于好奇,为什么要防止 wav 文件收缩?
  • 因为当我在MediaPlayer 中加载时,如果我缩小它们,我会得到一个 IOException。我没有使用R.raw.name 引用文件,而是通过反射动态获取它们的残基。

标签: android gradle


【解决方案1】:

/res/raw/keep.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
           tools:keep="*.wav"/>

【讨论】:

  • 不指定扩展名,只指定资源名称!
【解决方案2】:

res/raw/ 文件夹中的两个 wav 文件存在类似问题 - bell.wavbeep.wav。 membersounds 的answer above 指出了正确的方向,但没有解决问题 - 这是有效的/res/raw/keep.xml

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:tools="http://schemas.android.com/tools"
           tools:keep="@raw/bell,@raw/beep"/>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-28
    • 1970-01-01
    • 1970-01-01
    • 2019-07-14
    • 1970-01-01
    • 2022-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多