Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Lenguajes de límite de Lint de Android para comprobar traducciones perdidas

Mi aplicación sólo admite 2 idiomas: inglés y alemán. Así que tengo la estructura de carpetas para las cadenas de idiomas:

Myproject / res / values ​​/ strings.xml

Myproject / res / valores-de / strings.xml

Cuando ejecuto Lint chequeo tengo muchas advertencias acerca de idiomas faltantes, que mi aplicación no necesita soportar:

"Some_string" no se traduce en af, am, ar, be, bg, ca, cs, da, el, en-rGB, es, es-rUS, et, fa, fi, fr, hi, hr, hu, in ,,,,,,,,,,,,,,,,,,,,,,,,,,,, , Zh-rCN, zh-rTW, zu

Esta advertencia hace muy difícil entender qué cadenas no se traducen al idioma alemán. Tengo que mirar cada advertencia y buscar símbolos "de" para entender que esta cadena no tiene traducción al alemán.

Así que mi pregunta es simple – ¿cómo puedo decir a Lint que compruebe sólo 2 idiomas ?

  • Android Lint: ignore los proyectos de biblioteca
  • Descripción de la anotación @SuppressLint ("NewApi")
  • ¿Cómo hacer que la generación de la versión de Grade no funcione con Lint Option StopShip?
  • Android Build Tools 1.1.0 - Lint falla en el identificador de problema desconocido "ImproperProjectLevelStatement"
  • Por qué no puedo usar "correr Android lint" desde el menú "Window" en Eclipse en la barra de herramientas Puedo ejecutar, ¿está bien?
  • Significado de "Ninguna vista de etiquetas apunta a este campo de texto" mensaje de advertencia
  • Lint para android en Eclipse da resultados erróneos
  • Fatal Lint Error durante la exportación de la aplicación firmada
  • 3 Solutions collect form web for “Lenguajes de límite de Lint de Android para comprobar traducciones perdidas”

    Mismo problema aquí.

    He creado un informe de error, no dude en protagonizarlo

    http://code.google.com/p/android/issues/detail?id=50525

    Esto sucedió desde el lanzamiento de ADT 21.1.

    No conozco ninguna solución para ello (edición: antes, aunque para haber encontrado una solución, pero he mirado el archivo equivocado, ups)

    Actualización : ¡Puede limitar los idiomas importados por Gradle! Cyril Mottier señala que usted puede especificar qué recursos usted apoya.

    Iniciando Android Gradle Plugin 0.7, puede pasar información sobre las configuraciones que su aplicación se ocupa del sistema de compilación. Esto se hace gracias a resConfig y resConfigs sabor y opción de configuración por defecto. El DSL siguiente evita que aapt envíe recursos que no coincidan con las configuraciones de recursos administrados de la aplicación:

    defaultConfig { // ... resConfigs "en", "de", "fr", "it" } 

    Más información aquí Poner tus APKs en la dieta y en Android (buscar resConfig en la página)


    Parece que si agrega un proyecto a su ruta de construcción, todos y cada uno de los idiomas que se han añadido a esos proyectos se desplegará en su proyecto. Tales como el proyecto "google-play-services_lib", que agregó un buen 40 + idiomas a mi proyecto que "apoyado". Esta fue la razón por la que me dieron los errores loco pelusa (similar a la suya por encima), a pesar de que sólo tenía un defecto y español (valores-es) carpeta de recursos.

    La solución es simplemente eliminar los archivos / carpetas de recursos que no está soportando desde los proyectos externos / importados. Después de haber eliminado todos excepto la carpeta valores / valores-es del proyecto google-play-services_lib, las advertencias de pelusa desaparecieron para los idiomas que no son de destino. Asegúrese de guardar una copia de seguridad de los archivos de recursos en caso de que tenga ganas de agregar soporte para esos idiomas / regiones en una fecha posterior.

    Espero que esto ayude. Yo estaba golpeando mi cabeza sobre la mesa y todo SO y Google durante unos días tratando de averiguar cómo frasear el problema. Entonces finalmente me di cuenta de cuál era la diferencia entre mis dos proyectos que ambos tenían traducciones, los proyectos de la biblioteca.

    Ojalá hubiera una manera de decirle al proyecto que sólo soporta idiomas x / y / z y que ignore el resto.

    Tengo el mismo problema, debido a la inclusión del servicio de biblioteca de Google …

    Aquí está mi solución, por el momento:

    1. Eliminar todas las bibliotecas incluidas
    2. Aplicar pelusa
    3. corrige los errores
    4. Agregue todas las bibliotecas de nuevo
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.