2013-11-09 27 views
1

我有构建时偶尔交换或修改的原始资源,但文件名未被更改,且aapt未包含更改;它使用以前版本的bin/MyThing.ap_(我猜这是他们被藏起来的地方)。从ant debug强制aapt在构建过程中重新评估原始资源

 [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。有什么我可以在蚂蚁文件中设置等?

回答

1

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

<touch file="AndroidManifest.xml" datetime="now"/> 
<antcall target="release" />