0

This is driving me nuts. I'm trying to upload a draft apk to the app store, I'm a windows developer, and this is my first android app, so I don't really have a frame of reference to work from. I export the signed apk, and from the developer console I browse to the apk, select it, and attempt to upload. I receive the message: The file is invalid: ERROR getting 'android:name' attribute: attribute is not a string value. I have uploaded this apk to the web, and can successfully download, install, and run the app outside of the market. I've self-signed the apk, and have verified that is done correctly. Any suggestions would be appreciated.

AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?>  
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.My.PackageName"
      android:versionCode="1" android:versionName="1.0.0">  
    <application android:icon="@drawable/icon" android:label="@string/app_name">  
        <activity android:name=".Home" android:configChanges="orientation"
                android:label="@string/app_name" android:launchMode="standard" android:icon="@drawable/icon">  
              <intent-filter>  
                    <action android:name="android.intent.action.MAIN" />  
                    <category android:name="android.intent.category.LAUNCHER" />  
              </intent-filter>          
        </activity>  
        <activity android:name=".Preferences" android:label="@string/set_preferences">  </activity>  
        <activity android:name="com.admob.android.ads.AdMobActivity" 
              android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
              android:configChanges="orientation|keyboard|keyboardHidden"
        />                
        <meta-data android:value="myValue" android:name="ADMOB_PUBLISHER_ID" />  
        <meta-data android:value="true" android:name="ADMOB_ALLOW_LOCATION_FOR_ADS" />          
    </application>  
    <uses-sdk android:minSdkVersion="4" />  
    <uses-permission android:name="android.permission.INTERNET" />  
</manifest>`
jonp
  • 13,512
  • 5
  • 45
  • 60
user561818
  • 33
  • 1
  • 5
  • Sounds like an error in your manifest. – Falmarri Jan 03 '11 at 22:01
  • Please post you manifest so we can take a look at it – Peter Knego Jan 03 '11 at 22:11
  • Sorry, I've updated the question to include the AndroidManifest.xml. I'm sure the error is in there, and related to an invalid or missing name attribute, but going from the top to the bottom of this I'm not seeing where the error might be – user561818 Jan 03 '11 at 22:33

3 Answers3

1

A missing label attribute on an Activity declaration will not be the reason for aapt debug badging to fail! You can leave them out of your Activity declaration without issues.

A common cause for these failures is a string resource that is declared in one of the translated resources while missing in the non translated, main resource folder.

res
  values
    strings.xml <-- missing declaration here
  values-it
    strings.xml <-- of a string declared here and used in manifest as a label

run the aapt command from the /path/to/sdk/build-tools folder to find more information about this error:

aapt debug badging /path/to/apk
hcpl
  • 17,382
  • 7
  • 72
  • 73
0

Looks like you forgot to set the name attribute or gave an invalid one in the AndroidManifest.xml

ninjasense
  • 13,756
  • 19
  • 75
  • 92
-1

I just had the same issue. Found the problem - I'd missed the label from one of my activity declarations. In your case, looks like the 3rd activity.

ShibbyUK
  • 1,501
  • 9
  • 12