1

我的原始资源偶尔会在构建之间交换或修改而文件名没有更改,并且 aapt 不包含更改;它使用了以前的版本bin/MyThing.ap_(我猜这是它们被隐藏的地方)。来自ant debug

     [echo] Handling Resources...
     [aapt] No changed resources. R.java and Manifest.java untouched.
...
-package-resources:
     [aapt] No changed resources or assets. WhereWhen.ap_ remains untouched

我发现解决这个问题的唯一方法是移动/重命名文件,构建,然后移动/重命名它们并再次构建。

在线搜索我注意到Eclipse中有一些点击设置来强制刷新资源,但我没有使用Eclipse。我可以在 ant 文件等中设置什么吗?

4

1 回答 1

1

在为各种渠道使用混淆和发布时,我遇到了同样的问题。根本原因是aapt使用源文件的时间戳来判断是否存在改变资源。更可靠的解决方案是更改任何源文件的时间戳,建议使用 AndroidManifest.xml。在 ant 中调用 release 之前,我使用 ant 或 build.xml 来执行此操作。

<touch file="AndroidManifest.xml" datetime="now"/>
<antcall target="release" />
于 2014-08-14T04:13:30.623 回答