问题
This is the message I get, when I try to upload signed-aligned APK to the play store.
Can someone please help out to fix the bug!!
Your APK cannot be analyzed using 'aapt dump badging'.
Error output:Failed to run aapt dump badging:W/ResourceType( 8485):Bad resource table: header size 0xc263 or total size 0x38f9a63b is larger than data size 0x34818 W/zipro ( 8485): Zip inflate failed, zerr=-3 (nIn=0xf744efb6 aIn=2130 nOut=0xf82e73b8 aOut=8324) ERROR: AndroidManifest.xml is corrupt
here is the Android.XML file AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- File Version: 3.1: 08/28/2013 -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.watchtowerchanges"
android:versionCode="1"
android:versionName="1.0" >
<!-- app requires Android 3.0 or above on device -->
<!-- <uses-sdk android:minSdkVersion="11"/> -->
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="14" />
<!-- required device permissions -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<!-- Google Cloud Messaging permissions (PROJECT NUMBER REQUIRED FURTHER DOWN IN THIS DOCUMENT) -->
<permission
android:name="com.watchtowerchanges.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.watchtowerchanges.permission.C2D_MESSAGE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<!-- Google Maps permissions (GOOGLE MAPS FOR ANDROID API KEY REQUIRED FURHTER DOWN IN THIS DOCUMENT) -->
<uses-permission android:name="com.watchtowerchanges.permission.MAPS_RECEIVE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<!-- other optional hardware features -->
<uses-feature
android:name="android.hardware.camera"
android:required="false" />
<uses-feature
android:name="android.hardware.camera.autofocus"
android:required="false" />
<uses-feature
android:name="android.hardware.location"
android:required="false" />
<uses-feature
android:name="android.hardware.location.gps"
android:required="false" />
<uses-feature
android:name="android.hardware.telephony"
android:required="false" />
<!-- supported screen sizes and density -->
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="true" />
<!-- application -->
<application
android:name="watchtowerchanges_appDelegate"
android:debuggable="true"
android:hardwareAccelerated="false"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/hostThemeWithTitle" >
<!--
Google Cloud Messaging Project Number
Replace "YOUR_GOOGLE_GCM_PROJECT_NUMBER" with the Project Number provided by Google
See http://developer.android.com/google/gcm/gs.html
-->
<meta-data
android:name="googleCloudMessagingProjectNumber"
android:value="YOUR_GOOGLE_GCM_PROJECT_NUMBER_GOES_HERE" />
<!--
Google Maps v2 API Key
Replace "GOOGLE_MAPS_FOR_ANDROID_V2_API_KEY_GOES_HERE" on the next line with the Google Maps for Android API Key provided by Google
See: https://developers.google.com/maps/documentation/android/start#installing_the_google_maps_android_v2_api
-->
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="GOOGLE_MAPS_FOR_ANDROID_V2_API_KEY_GOES_HERE" />
<!-- Google Cloud Messaging -->
<receiver
android:name="com.watchtowerchanges.BT_gcmReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<action android:name="com.google.android.c2dm.intent.REGISTRATION" />
<category android:name="com.watchtowerchanges" />
</intent-filter>
</receiver>
<service android:name=".BT_gcmIntentService" />
<!-- BT_activity_start is the default, beginning activity, it may or may not load a splash screen fragment (plugin) -->
<activity
android:name=".BT_activity_start"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:theme="@style/startThemeNoTitle" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- BT_activity_host runs after startup and after splash screen (splash screens are not required -->
<activity
android:name=".BT_activity_host"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:theme="@style/hostThemeWithTitle"
android:uiOptions="splitActionBarWhenNarrow" >
</activity>
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
</application>
</manifest>
回答1:
Following points are need to be taken care of while uploading file on android market
(1) "android:versionCode" attribute from AndroidManifest.xml is proper. (2) "android:versionName" attribute from AndroidManifest.xml is proper. (3) The package name is very unique,. Because all the apps on android market are separated by the package.
Also make sure that you upload apk file after exporting ...
For more reference .. http://developer.android.com/tools/publishing/publishing_overview.html#publishing-prepare
回答2:
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
I think it's on your meta-data tag problem and
<meta-data
android:name="googleCloudMessagingProjectNumber"
android:value="YOUR_GOOGLE_GCM_PROJECT_NUMBER_GOES_HERE" />
<!--
Google Maps v2 API Key
Replace "GOOGLE_MAPS_FOR_ANDROID_V2_API_KEY_GOES_HERE" on the next line with the Google Maps for Android API Key provided by Google
See: https://developers.google.com/maps/documentation/android/start#installing_the_google_maps_android_v2_api
-->
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="GOOGLE_MAPS_FOR_ANDROID_V2_API_KEY_GOES_HERE" />
Did you put the API key ?
来源:https://stackoverflow.com/questions/20972342/error-message-i-got-when-i-went-to-upload-to-the-playstore