2.1 から 2.3 にアップグレードしたときに、組み込みの「ルール」xml で記号名が変更され、同様の問題が発生しました。2.1 は ant_rules_3.xml を使用しているように見えましたが、現在 SDK 2.3 は main_rules.xml を開始点として使用しています。私のように、ルール ファイルのターゲットに基づいて build.xml をカスタマイズした場合は、リンク テキストで説明されているようにサンプル プロジェクトを作成することで、簡単にやり直すことができるでしょう。
次に、build.xml を調整して、main_rules.xml にリストされているターゲットの一部またはすべてをオーバーライドします。(これは sdk\tools\ant フォルダーにあります)。このプロセスはかなり迅速で、単純なプロジェクトの場合、生成されたファイルは Ant で「箱から出して」動作することがわかりました。(main_rules.xml が対応できなかったため、.aidl ファイルを含む 2 番目のソース フォルダーを含むプロジェクトの build.xml を大幅に変更する必要がありました)
main_rules.xml には aapt を参照するターゲットが 2 つあります。おそらくこれを模倣する必要があります。
<target name="-package-resources">
<echo>Packaging resources</echo>
<aapt executable="${aapt}"
command="package"
versioncode="${version.code}"
debug="${build.packaging.debug}"
manifest="AndroidManifest.xml"
assets="${asset.absolute.dir}"
androidjar="${android.jar}"
apkfolder="${out.absolute.dir}"
resourcefilename="${resource.package.file.name}"
resourcefilter="${aapt.resource.filter}">
<res path="${resource.absolute.dir}" />
<!-- <nocompress /> forces no compression on any files in assets or res/raw -->
<!-- <nocompress extension="xml" /> forces no compression on specific file extensions in assets and res/raw -->
</aapt>
</target>
resourcefilename は、生成された apk の名前だと思います。私のビルド スクリプトは apk を生成し、それらを bin ディレクトリに配置します。リソース ファイル名を明示的に指定する必要はありません。私のbuild.propertiesは次のようになります:
#-----------------------------------------------
# The ONLY reference to the project's main base
#
projectname=MapProject1.2
#
#-----------------------------------------------
workspace.dir=/dev/projects/EclipseHelios/AndroidWorkspace
ant.project.name=${projectname}
outbasebase.dir=/dev/projects/AntBuilds
base.dir=${workspace.dir}/${projectname}
common_src=/dev/projects/CommonSource121210/GridSeviceAndUseGridService
source.dir=${base.dir}/src
outbase.dir=${outbasebase.dir}/${projectname}
out.dir=${outbase.dir}/bin
key.store=c:/users/me/my-release-key.keystore
key.alias=release_alias
key.store.password=*************
key.alias.password=*************
layout.dir=${base.dir}/res/layout
(もちろんパスワードは別として!)
build.properties から取得されるように、buid.xml のプロジェクト名をコメントアウトしました。