Android:如何告诉ShrinkResources保留某些资源

Android:如何告诉ShrinkResources保留某些资源,第1张

概述我的res/raw文件夹中有一个mp3和一个ogg文件,用于AndroidMediaPlayer.我像这样使用setDataSourcemusicPlayer.setDataSource(context,Uri.parse("android.resource://com.me.myapp/"+R.raw.music));从AndroidStudio运行时,此方法效果很好,但是,当导出启用了shrinkResou

我的res / raw文件夹中有一个mp3和一个ogg文件,用于Android Media Player.我像这样使用setDataSource

musicPlayer.setDataSource(context, Uri.parse("androID.resource://com.me.myapp/" + R.raw.music));

从AndroID Studio运行时,此方法效果很好,但是,当导出启用了shrinkResouces的签名APK时,它会剥离mp3(如上所述,我也有一个ogg文件,我以相同的方式使用它,但也会被剥离) .这是Resouces.txt文件中的关联结果:

Skipped unused resource res/raw/music.mp3: 485531 bytes (replaced with small dummy file of size 0 bytes)

Skipped unused resource res/raw/oggmusic.ogg: 5335764 bytes (replaced with small dummy file of size 0 bytes)

我已经进行了一些研究,并且在Google Issue Tracker上有针对此问题的错误报告,但是张贴者说,他/她使用了上面链接中包含的信息,以确保未删除所需的资源并且问题已经得到解决.标记为“预期行为”(我觉得有些奇怪,因为我不认为这是删除所需资源的预期行为).

无论如何,我尝试按照文档中的说明进行 *** 作,但似乎不起作用,我在这里做错了什么?我创建了一个名为“ keep.xml”的xml文件,并将其与保留的资源一起放在我的原始文件夹中.

这是XML:

<?xml version="1.0" enCoding="utf-8"?><resources xmlns:tools="http://schemas.androID.com/tools"       tools:keep="@raw/*.mp3, @raw/*.ogg"/>

这个问题在Eclipse中并不明显,但自移植到AndroID Studio后就出现了.

编辑

我做了一些测试,可以确认完全忽略了XML文件中指定的内容.例如,如果我使用“放弃”而不是“保留”,则“放弃”中所述的资源将显示在生成的APK文件中,因此我必须做错了某些事情或缺少某个步骤.

解决方法:

我刚刚遇到了这个问题,并发现我做错了什么.

引用资源时不要指定文件扩展名.

我一开始所做的 *** 作(这不起作用):

<?xml version="1.0" enCoding="utf-8"?><resources xmlns:tools="http://schemas.androID.com/tools"    tools:keep="@raw/vID.mp4"    />

解决方法,删除文件扩展名:

<?xml version="1.0" enCoding="utf-8"?><resources xmlns:tools="http://schemas.androID.com/tools"    tools:keep="@raw/vID"    />

您可以通过检查在./app/build/outputs/mapPing/\u0026lt;buildType\u0026gt;/resources.txt中找到的resources.txt文件来验证这一点.
https://developer.android.com/studio/build/shrink-code

总结

以上是内存溢出为你收集整理的Android:如何告诉ShrinkResources保留某些资源全部内容,希望文章能够帮你解决Android:如何告诉ShrinkResources保留某些资源所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1121069.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存