読者です 読者をやめる 読者になる 読者になる

Android Studioでアプリ開発!

Androidアプリ開発初心者の備忘録です。

Google PlayにAPKをアップロードしたときに出るエラーの対処法(APK は 'aapt dump badging' では解析できませんでした。)

Google Play に APK をアップロードしたらエラーが出た

作った Android アプリの最新版を Google Play にアップロードしたらエラーが出ました。

アップロードできませんでした
APK は 'aapt dump badging' では解析できませんでした。エラー出力:

Failed to run aapt dump badging:
ERROR getting 'android:name' attribute: attribute is not a string value


スクリーンショットはこちら。アルファ版の画像ですが、ベータ版でも製品版でも結果は同じです。
f:id:jolene:20140808140124p:plain

エラーが出る原因

エラーメッセージが不親切すぎてどこの何が悪いのか分かりにくいのですが...
いろいろ試した結果、AndroidManifest.xml で文字列を values/strings.xml から持ってくる場合、.(ドット)が含まれているとこのエラーが出ることが分かりました。

具体的には、
values/strings.xml に以下のように記述していて、

<string name="example_utl">http://example.com</string>

それを AndroidManifest.xml で

<android:name="@string/example_url" >

と指定すると APK アップロード時にエラーが出ます。

改善策

AndroidManifest.xml の該当する部分を values/strings.xml を用いずに直接記述する。
これで無事、APK をアップロードできました。

不満

直接記述することでアップロードできるようにはなりましたが、APK 作成時に(僕のアプリの場合は)手間がかかります。
なんとか別リソースで管理したいところなんですが...他に改善策がありましたらご教示ください。

はじめてのAndroidアプリ開発―Android4対応版 (TECHNICAL MASTER)

はじめてのAndroidアプリ開発―Android4対応版 (TECHNICAL MASTER)

Android StudioではじめるAndroidプログラミング入門

Android StudioではじめるAndroidプログラミング入門