我上传到Playstore时收到的错误消息

时间:2014-01-07 13:02:09

标签: android google-play apk google-play-services

当我尝试将已签名对齐的APK上传到Play商店时,这是我收到的消息。

有人可以帮忙修复错误!!

使用'aapt dump badging'无法分析您的APK。

  

错误输出:无法运行aapt转储标记:W / ResourceType(8485):错误的资源表:标头大小0xc263或总大小0x38f9a63b大于数据大小0x34818 W / zipro(8485):Zip膨胀失败,zerr = -3(nIn = 0xf744efb6 aIn = 2130 nOut = 0xf82e73b8 aOut = 8324)错误:AndroidManifest.xml已损坏

这是Android.XML文件 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>

2 个答案:

答案 0 :(得分:0)

在Android市场上传文件时需要注意以下几点

(1)AndroidManifest.xml中的“android:versionCode”属性是正确的。 (2)AndroidManifest.xml中的“android:versionName”属性是正确的。 (3)包装名称非常独特。因为Android市场上的所有应用程序都被包分开了。

还要确保在导出后上传apk文件...

更多参考资料.. http://developer.android.com/tools/publishing/publishing_overview.html#publishing-prepare

答案 1 :(得分:0)

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

我认为这是关于您的元数据标记问题和

<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" />

您是否放置了API密钥?