2013-11-09 2 views
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 и т. Д.?

ответ

1

Я столкнулся с той же проблемой при использовании обфускации и выпуске для различных каналов. Основная причина заключается в том, что aapt использует временную метку исходных файлов, чтобы судить о том, существуют ли измененные ресурсы. Более надежным решением является изменение метки времени исходного файла, рекомендованного AndroidManifest.xml. Я использую ant или build.xml для этого, прежде чем вызывать выпуск в муравье.

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