Error al ejecutar cordova build -release android

Estoy intentando publicar mi aplicación de Android siguiendo las instrucciones aquí:

Http://ionicframework.com/docs/guide/publishing.html

Sin embargo, cuando corro construir –release android consigo el siguiente error:

:lintVitalArmv7Release /Users/xxx/Documents/xxx/xxx/platforms/android/res/values/arrays.xml:3: Error: "country_codes" is not translated in "ar" (Arabic), "bg" (Bulgarian), "ca" (Catalan), "cs" (Czech), "da" (Danish), "de" (German), "el" (Greek), "es" (Spanish), "eu" (Basque), "fi" (Finnish), "fr" (French), "he" (Hebrew), "hi" (Hindi), "hu" (Hungarian), "id" (Indonesian), "it" (Italian), "iw" (Hebrew), "ja" (Japanese), "ko" (Korean), "nl" (Dutch), "pl" (Polish), "pt" (Portuguese), "ru" (Russian), "sk" (Slovak), "sl" (Slovene), "sv" (Swedish), "tr" (Turkish), "zh-rCN" (Chinese: China), "zh-rTW" (Chinese: Taiwan, Province of China) [MissingTranslation] <string-array name="country_codes"> ~~~~~~~~~~~~~~~~~~~~ /Users/xxx/Documents/xxx/xxx/platforms/android/res/values/strings.xml:3: Error: "app_name" is not translated in "ar" (Arabic), "bg" (Bulgarian), "ca" (Catalan), "cs" (Czech), "da" (Danish), "de" (German), "el" (Greek), "es" (Spanish), "eu" (Basque), "fi" (Finnish), "fr" (French), "he" (Hebrew), "hi" (Hindi), "hu" (Hungarian), "id" (Indonesian), "it" (Italian), "iw" (Hebrew), "ja" (Japanese), "ko" (Korean), "nl" (Dutch), "pl" (Polish), "pt" (Portuguese), "ru" (Russian), "sk" (Slovak), "sl" (Slovene), "sv" (Swedish), "tr" (Turkish), "zh-rCN" (Chinese: China), "zh-rTW" (Chinese: Taiwan, Province of China) [MissingTranslation] <string name="app_name">myapp</string> ~~~~~~~~~~~~~~~ /Users/xxx/Documents/xxx/xxx/platforms/android/res/values/strings.xml:4: Error: "launcher_name" is not translated in "ar" (Arabic), "bg" (Bulgarian), "ca" (Catalan), "cs" (Czech), "da" (Danish), "de" (German), "el" (Greek), "es" (Spanish), "eu" (Basque), "fi" (Finnish), "fr" (French), "he" (Hebrew), "hi" (Hindi), "hu" (Hungarian), "id" (Indonesian), "it" (Italian), "iw" (Hebrew), "ja" (Japanese), "ko" (Korean), "nl" (Dutch), "pl" (Polish), "pt" (Portuguese), "ru" (Russian), "sk" (Slovak), "sl" (Slovene), "sv" (Swedish), "tr" (Turkish), "zh-rCN" (Chinese: China), "zh-rTW" (Chinese: Taiwan, Province of China) [MissingTranslation] <string name="launcher_name">@string/app_name</string> ~~~~~~~~~~~~~~~~~~~~ /Users/xxx/Documents/xxx/xxx/platforms/android/res/values/strings.xml:5: Error: "activity_name" is not translated in "ar" (Arabic), "bg" (Bulgarian), "ca" (Catalan), "cs" (Czech), "da" (Danish), "de" (German), "el" (Greek), "es" (Spanish), "eu" (Basque), "fi" (Finnish), "fr" (French), "he" (Hebrew), "hi" (Hindi), "hu" (Hungarian), "id" (Indonesian), "it" (Italian), "iw" (Hebrew), "ja" (Japanese), "ko" (Korean), "nl" (Dutch), "pl" (Polish), "pt" (Portuguese), "ru" (Russian), "sk" (Slovak), "sl" (Slovene), "sv" (Swedish), "tr" (Turkish), "zh-rCN" (Chinese: China), "zh-rTW" (Chinese: Taiwan, Province of China) [MissingTranslation] <string name="activity_name">@string/launcher_name</string> ~~~~~~~~~~~~~~~~~~~~ Explanation for issues of type "MissingTranslation": If an application has more than one locale, then all the strings declared in one language should also be translated in all other languages. If the string should not be translated, you can add the attribute translatable="false" on the <string> element, or you can define all your non-translatable strings in a resource file called donottranslate.xml. Or, you can ignore the issue with a tools:ignore="MissingTranslation" attribute. By default this detector allows regions of a language to just provide a subset of the strings and fall back to the standard language strings. You can require all regions to provide a full translation by setting the environment variable ANDROID_LINT_COMPLETE_REGIONS. You can tell lint (and other tools) which language is the default language in your res/values/ folder by specifying tools:locale="languageCode" for the root <resources> element in your resource file. (The tools prefix refers to the namespace declaration http://schemas.android.com/tools.) /Users/xxx/Documents/xxx/xxx/platforms/android/res/values-ar/strings.xml:64: Error: "menu_settings" is translated here but not found in default locale [ExtraTranslation] <string name="menu_settings">???????</string> 5 errors, 0 warnings :lintVitalArmv7Release FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':lintVitalArmv7Release'. > Lint found fatal errors while assembling a release target. To proceed, either fix the issues identified by lint, or modify your build script as follows: ... android { lintOptions { checkReleaseBuilds false // Or, if you prefer, you can continue to check for errors in release builds, // but continue the build even when errors are found: abortOnError false } } ... * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. BUILD FAILED Total time: 4.583 secs /Users/xxx/Documents/xxx/xxx/platforms/android/cordova/node_modules/q/q.js:126 throw e; ^ Error code 1 for command: /Users/xxx/Documents/xxx/xxx/platforms/android/gradlew with args: cdvBuildRelease,-b,/Users/xxx/Documents/xxx/xxx/platforms/android/build.gradle,-Dorg.gradle.daemon=true ERROR building one of the platforms: Error: /Users/xxx/Documents/xxx/xxx/platforms/android/cordova/build: Command failed with exit code 8 You may not have the required environment or OS to build this project Error: /Users/xxx/Documents/xxx/xxx/platforms/android/cordova/build: Command failed with exit code 8 at ChildProcess.whenDone (/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:131:23) at ChildProcess.emit (events.js:98:17) at maybeClose (child_process.js:766:16) at Process.ChildProcess._handle.onexit (child_process.js:833:5) 

Puedo ejecutar ionic construir android y desplegar en un emulador sin problema.

He intentado buscar lintOptions y build.gradle pero no puedo encontrarlos en ningún parte de mi proyecto …

¿Alguien puede ayudar? Gracias por adelantado

Resuelto esto añadiendo

 lintOptions { abortOnError false } 

A la sección android {} en /platforms/android/build.gradle

Mi actualización de build.gradle a

 android { lintOptions { disable 'MissingTranslation', 'ExtraTranslation' } } 

trabajó.

Para aquellos que prefieren mantener el directorio de platforms fuera del VCS (Git, etc),
La mejor solución en este momento es usar un plugin llamado ignore-lint-translation .

 cordova plugin add cordova-plugin-ignore-lint-translation --save 

El resultado efectivo es la adición de un archivo gradle que desactivará tales opciones de pelusa (doh!).

Uno puede ser más específico añadiendo

 lintOptions { disable MissingTranslation } 

Para corregir este error debe agregar

 lintOptions { checkReleaseBuilds false // Or, if you prefer, you can continue to check for errors in release builds, // but continue the build even when errors are found: abortOnError false } 

En la sección android {} de /platforms/android/build.gradle

 echo "android { lintOptions { checkReleaseBuilds false } }" >> platforms/android/build-extras.gradle 
  • Cordova, recibiendo Error al agregar plataforma android en Ubuntu 14.04
  • Construir variantes de aplicaciones iónicas
  • No se muestra la pantalla de bienvenida de la aplicación iónica
  • Vídeo como imagen de fondo ionic app
  • Ionic2 mínimo iOS y versiones de Android
  • Ionic: emulador: ERROR: La configuración de este AVD falta un archivo del kernel !! Emulador: ERROR: ANDROID_SDK_ROOT no está definido
  • Cordova Ionic - La aplicación se detuvo inesperadamente
  • Facebook Pixel Conversion (Facebook Ads) no actualizado en el marco de Ionic
  • Instalando el ERP iónico npm! Error tar.unpack
  • Cordova construir | Se ha producido un error en la ejecución - compileDebugJavaWithJavac
  • ¿Cómo construir y desplegar una versión anterior de android para ionic / cordova
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.