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

さまざまなチャネルで難読化とリリースを使用しているときに、同じ問題が発生しました。根本的な原因は、apt がソース ファイルのタイムスタンプを使用して、変更されたリソースが存在するかどうかを判断することです。より信頼性の高い解決策は、ソース ファイルのタイムスタンプを変更することです。 AndroidManifest.xml をお勧めします。Ant で release を呼び出す前に、ant または build.xml を使用してこれを行います。

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