Can't update my app in Google Play: aapt error

2019-02-18 21:35发布

问题:

Today when I tried to upload an update of my app, I got this from Google Play console:

UPLOAD NEW APK TO PRODUCTION

Upload failed Your APK cannot be analyzed using 'aapt dump badging'. Error output: Failed to run aapt dump badging: ERROR getting 'android:value' attribute for meta-data:attribute could not be found

I can upload normally before. I haven't made any change in AndroidManifest.xml. The app is built via ant. I also tried building it again, even with the last-known-good code, the same error occurs.

Should I report this to Google Play team, or is it a known issue of Google Play? Is there any work around?

回答1:

It's now acknowledged by Google:

Some developers have reported seeing the error "Failed to run aapt dump badging: ERROR getting 'android:value' attribute for meta-data:attribute could not be found" when attempting to upload their .apk.

We're working on solving this problem. In the meantime, you can try adding the "android:value" to any meta-data manifest property that lacks that attribute. See API Guides - for more information.

https://support.google.com/googleplay/android-developer/known-issues/24493



回答2:

I had the exact same problem, but managed to fix it now. The problem is definitely in your manifest file. For me it was the Samsung MultiWindow feature. I found the solution here: Google Code Issue 46311

I had to change

        <meta-data android:name="com.sec.android.multiwindow.DEFAULT_SIZE_W" android:resource="@dimen/app_defaultsize_w"/>
    <meta-data android:name="com.sec.android.multiwindow.DEFAULT_SIZE_H" android:resource="@dimen/app_defaultsize_h"/> 

into

        <meta-data android:name="com.sec.android.multiwindow.DEFAULT_SIZE_W" android:value="632dp"/>
    <meta-data android:name="com.sec.android.multiwindow.DEFAULT_SIZE_H" android:value="598dp"/>        

Worked fine since yesterday, but now i had to change it. Hope it helps.



回答3:

Same problem here after generating new apk for alpha release with same certificate I get the error (in Dutch):

Upload mislukt

Uw APK kan niet worden geanalyseerd met 'aapt dump badging'. Foutuitvoer:

Failed to run aapt dump badging: ERROR getting 'android:value' attribute for meta-data:attribute could not be found

I found one place in my Manifest where I use android:value for samsun multiwindow support.

<meta-data
        android:name="com.sec.android.support.multiwindow"
        android:value="true" />

I removed that from the Manifest. generated new apk (after project clean rebuild) and got the same error. This Manifest worked in my apk when uploading a previous version two weeks ago.



回答4:

Use

android:name="some string value"

Instead of

android:name="@string/name_of_string_resource"