2011-09-28 10 views
9

Tengo este error "ERROR obteniendo 'android: etiqueta' atributo: atributo no es un valor de cadena" al tratar de publicar mi aplicación en el mercado Android. Hace algún tiempo, esta aplicación ya se publicó con éxito en el mercado, pero cuando aplico cambios menores en AndroidManifest.xml (cambiando versionCode y versionName) obtengo este error constantemente.ERROR obteniendo 'android: etiqueta' atributo: atributo no es un valor de cadena

Miré a todos los temas similares aquí, tales como:

Android Market Publishing Issues

"ERROR getting 'android:icon' attribute: attribute is not a string value" when trying to upload to the Android Market

The file is invalid: ERROR getting 'android:name' attribute: attribute is not a string value

pero ninguna de estas soluciones me ayudó. ¿Conoces alguna otra razón de tal error? Aquí es mi AndroidManifest.xml:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.samsung.att.deskhome" android:versionCode="12" android:versionName="2.3"> 
<uses-permission android:name="android.permission.READ_CALENDAR" /> 
<uses-permission android:name="android.permission.WAKE_LOCK" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.SET_WALLPAPER" /> 
<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS" /> 
<uses-permission android:name="android.permission.DISABLE_KEYGUARD" /> 
<application android:icon="@drawable/mainmenu_icon_homemount" android:label="@string/app_name"> 
<activity android:name=".CradleMain" android:label="@string/app_name" android:theme="@android:style/Theme.NoTitleBar" android:launchMode="singleTask" > 
<meta-data android:name="android.dock_home" android:value="true" /> 
<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.DEFAULT" /> 
<category android:name="android.intent.category.LAUNCHER" /> 
<category android:name="android.intent.category.DESK_DOCK" /> 
</intent-filter> 
</activity>  
<activity android:name=".CradleHomeSettings" android:label="@string/cradle_home_settings" android:launchMode="singleTask" android:configChanges="orientation"> 
<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.DESK_DOCK" /> 
</intent-filter> 
</activity> 
<activity android:name=".CradleWeatherSettings" android:label="@string/cradle_weather_settings" android:launchMode="singleTask" android:configChanges="orientation"> 
<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.DESK_DOCK" /> 
</intent-filter> 
</activity> 
<activity android:name=".CradleWallpaperChooser" android:label="@string/pick_wallpaper" android:screenOrientation="nosensor" android:finishOnCloseSystemDialogs="true" android:configChanges="locale"> 
<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.DESK_DOCK" /> 
</intent-filter> 
</activity> 
</application> 
<uses-sdk android:minSdkVersion="8" /> 
<uses-sdk android:maxSdkVersion="10" /> 
</manifest> 
+6

El motivo del problema era que values ​​/ strings.xml no contenía uno de los atributos "android: label", aunque sí en otros strings.xml localizados. – amilien

Respuesta

10

Siempre que se produce un error en la tienda de juego, mientras que la posibilidad de subir asegúrese de ejecutar ese mismo comando localmente para obtener una salida adecuada. El resultado obtenido de la consola en línea es engañoso.

Un ejemplo de mi propio código, esto es lo que tengo en la consola en línea:

Failed to run aapt dump badging: 
W/ResourceType(4560): Failure getting entry for 0x7f0601c6 (t=5 e=454) in package 0 (error -75) 
ERROR getting 'android:label' attribute: attribute is not a string value 

y una carrera local de esa misma herramienta (que se encuentra en las acumulaciones de herramientas en dir SDK)

aapt dump badging /path/to/your/apk 

reveló información útil como la posición en la que el cheque no se pudo:

package: name='X' versionCode='X' versionName='X' 
sdkVersion:'7' 
targetSdkVersion:'17' 
uses-permission:'android.permission.INTERNET' 
... 
uses-permission:'android.permission.WRITE_EXTERNAL_STORAGE' 
uses-feature-not-required:'android.hardware.camera' 
uses-feature-not-required:'android.hardware.camera.autofocus' 
application-label:'Photo Tools' 
application-label-zh:'摄影工具' 
application-label-nl:'Photo Tools' 
application-label-fr:'Photo Tools' 
application-label-es:'Photo Tools' 
application-label-it:'Photo Tools' 
application-label-ru:'Photo Tools' 
application-icon-160:'res/drawable/phototools_icon.png' 
application-icon-240:'res/drawable/phototools_icon.png' 
application-icon-320:'res/drawable/phototools_icon.png' 
application-icon-480:'res/drawable/phototools_icon.png' 
application: label='Photo Tools' icon='res/drawable/phototools_icon.png' 
launchable-activity: name='be.hcpl.android.phototools.PhotoToolsActivity' label='Photo Tools' icon='' 
W/ResourceType(30945): Failure getting entry for 0x7f0601c6 (t=5 e=454) in package 0 (error -84) 
ERROR getting 'android:label' attribute: attribute is not a string value 
+1

Me sale el mismo error, su respuesta falta la solución, ¿qué hizo después de obtener este volcado – meda

+2

@meda para mí un valor de cadena faltaba en el strings.xml por defecto mientras se traducía en otro archivo strings.xml – hcpl

1

Para investigar, he seguido º e siguiente metodología:

  1. comentario a cabo las actividades de uno en uno
  2. construir la autorización firmada
  3. plazo volcado aapt credencialización/ruta/a/su/apk
  4. ver los errores y repetir

Esto me permitió limitarme a la raíz de mi problema. Solo una cadena sin recurso en su lugar, la etiqueta no se estaba utilizando en la aplicación. Eliminé el atributo de etiqueta como una solución.

1

lea la respuesta @hcpl, si no puede encontrar el error, busque la siguiente actividad enumerada en el manifiesto. en su mensaje:

launchable-activity: name='be.hcpl.android.phototools.PhotoToolsActivity' label='Photo Tools' icon='' 
W/ResourceType(30945): Failure getting entry for 0x7f0601c6 (t=5 e=454) in package 0 (error -84) 
ERROR getting 'android:label' attribute: attribute is not a string value 

Se podría pensar que el problema está relacionado con PhotoToolsActivity pero se trata de la siguiente actividad que no recibe conectarse porque aapt accidentes

0

comprobar los valores/strings.xml y valores- xx/strings.xml Debe asegurarse de que todas las palabras en values ​​/ strings.xml deben tener la palabra correspondiente en values-xx/strings.xml.

0

En mi caso, faltaba el string.xml por defecto, borrado accidentalmente del proyecto.

que utilizo:

disable 'ExtraTranslation' 
disable 'MissingTranslation' 

en el Gradle, por lo que he ninguna evidencia del archivo string.xml faltante.

Cuestiones relacionadas