Creación Ionic de Android: java.lang.IllegalStateException: buildToolsVersion no se especifica

Desde hoy, de alguna manera mi proyecto iónico ya no es capaz de construir por alguna razón. Ya he intentado eliminar la plataforma y añadirla de nuevo, pero no funcionó. Ahora casi pasamos tres de nosotros con la actualización, degradación y reinstalación cordova e iónicos, pero por alguna razón siempre tengo el siguiente error cuando intento construir la versión de Android:

Failed to notify ProjectEvaluationListener.afterEvaluate(), but primary configuration failure takes precedence. java.lang.IllegalStateException: buildToolsVersion is not specified. at com.google.common.base.Preconditions.checkState(Preconditions.java:176) at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:599) at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:566) at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:563) at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:55) at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:47) at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:562) at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:559) at org.gradle.listener.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:109) at org.gradle.listener.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:98) at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:83) at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:31) at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93) at com.sun.proxy.$Proxy12.afterEvaluate(Unknown Source) at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:79) at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:65) at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:504) at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:83) at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:42) at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35) at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:129) at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106) at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86) at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:80) at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:33) at org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24) at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36) at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26) at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:47) at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:35) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:24) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.StartStopIfBuildAndStop.execute(StartStopIfBuildAndStop.java:33) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:71) at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:69) at org.gradle.util.Swapper.swap(Swapper.java:38) at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:69) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:60) at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:70) at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:34) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.DaemonHygieneAction.execute(DaemonHygieneAction.java:39) at org.gradle.launcher.daemon.server.exec.DaemonCommandExecution.proceed(DaemonCommandExecution.java:119) at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:46) at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246) at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:64) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) FAILURE: Build failed with an exception. 

Ya he intentado establecer la buildToolsVersion en el config.xml pero sin ningún éxito. ¿Alguien tiene el mismo problema antes?

Lo averigué, el problema se debía a una entrada config.xml mal configurada:

 <widget xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0" id="ch.papers.test" version="1.0.{BUILD_NUMBER}" android-versionCode="{BUILD_NUMBER}">... 

Que utilizamos para nuestra configuración de Jenkins. Desafortunadamente el mensaje de error fue muy confuso.

Actualizar versión corregida:

 <widget xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0" id="ch.papers.test" version="1.0.0" android-versionCode="1">... 

Tuve el mismo problema. Lo arreglé de la siguiente manera:

Abra la configuración de Android studio.

Vaya a config> SDK Manager> SDK de Android> Herramientas de SDK e instale Android SDK Build-Tools.

Compruebe la variable ANDROID_HOME. Estoy en mac, por lo que apunta a "/ Users / user_name / Library / Android / sdk /"

Si no se ha ajustado correctamente, establézcalo de la siguiente manera:

Export ANDROID_HOME = "/ Usuarios / nombre_usuario / Library / Android / sdk /"

Ahora construye de nuevo y debe funcionar bien.

PS: Obtener android sdk mediante la instalación de Android Studio es muy recomendable que instalar el sdk manualmente. De esta manera usted no se encontrará con problemas innecesarios.

Estaba enfrentando este problema. El problema era que mi ruta ANDROID_HOME apuntaba a la carpeta de Android Studio. Lo cambié para apuntar a mi carpeta SDK de Android y el problema se resolvió.

  1. Compruebe su ANDROID_HOME:

Echo $ ANDROID_HOME

  1. Debe señalar a la carpeta SDK de Android:

Export ANDROID_HOME = "su-android-sdk-carpeta"

He resuelto este problema guardando el build.gradle y / o el build-extras.gradle con terminaciones de línea Unix (LF). Tu android-versionCode no debería tener nada que ver con la buildversion de tu android sdk …

  • Ionic Framework inicia error en Android
  • Ionic registerBackButtonAction no funciona
  • ¿Cómo puedo obtener el estado del timbre / estado de silencio de un dispositivo usando Cordova?
  • No se puede instanciar el receptor com.parse.GcmBroadcastReceiver
  • Ionic - Error: No se puede encontrar el módulo 'jshint' mientras se construye un release.apk
  • Ionic Android No se encontró ningún recurso que coincida con el nombre dado .. cardBackgroundColor
  • La aplicación de Ionic se ejecuta en el navegador, pero falla en Android: Error al inicializar Cordova: Clase no encontrada
  • Ionic construir Android no funciona en el paquete de recursos
  • Phonegap: ignora la configuración de la pantalla de tamaño de fuente en Android
  • No se puede leer la propiedad 'getPicture' de undefined - cámara iónica
  • Instalando el ERP iónico npm! Error tar.unpack
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.