versiones pie oreo developer caracteristicas android

pie - android versiones



Conflicto con la dependencia ''com.android.support:support-annotations'' en el proyecto '': aplicación''. Las versiones resueltas para la aplicación(26.1.0) y la aplicación de prueba(27.1.1) difieren. (15)

Actualización importante

Ir a nivel de proyecto build.gradle, definir variables globales

// Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext.kotlinVersion = ''1.2.61'' ext.global_minSdkVersion = 16 ext.global_targetSdkVersion = 28 ext.global_buildToolsVersion = ''28.0.1'' ext.global_supportLibVersion = ''27.1.1'' }

Vaya al nivel de aplicación build.gradle y use variables globales

aplicación build.gradle

android { compileSdkVersion global_targetSdkVersion buildToolsVersion global_buildToolsVersion defaultConfig { minSdkVersion global_minSdkVersion targetSdkVersion global_targetSdkVersion } ... dependencies { implementation "com.android.support:appcompat-v7:$global_supportLibVersion" implementation "com.android.support:recyclerview-v7:$global_supportLibVersion" // and so on... }

alguna biblioteca build.gradle

android { compileSdkVersion global_targetSdkVersion buildToolsVersion global_buildToolsVersion defaultConfig { minSdkVersion global_minSdkVersion targetSdkVersion global_targetSdkVersion } ... dependencies { implementation "com.android.support:appcompat-v7:$global_supportLibVersion" implementation "com.android.support:recyclerview-v7:$global_supportLibVersion" // and so on... }

La solución es hacer que sus versiones sean las mismas que en todos los módulos. Para que no tengas conflictos.

Consejos importantes

Me sentí cuando tengo versiones actualizadas de todo: gradle, sdks, bibliotecas, etc. luego me enfrento a menos errores. Porque los desarrolladores están trabajando duro para facilitar el desarrollo en Android Studio.

Siempre tenga las versiones más recientes pero estables. Las versiones inestables son alpha , beta y rc , ignorándolas en el desarrollo.

He actualizado todo lo que aparece a continuación en mis proyectos y ya no enfrento estos errores.

¡Feliz codificación! :)

Soy nuevo en el desarrollo de aplicaciones para Android. Cuando intenté crear un nuevo proyecto, el Proyecto de Android ... apareció el siguiente mensaje ...

Error: la ejecución falló para la tarea '': aplicación: preDebugAndroidTestBuild''.

Conflicto con la dependencia ''com.android.support:support-annotations'' en el proyecto '': aplicación''. Las versiones resueltas para la aplicación (26.1.0) y la aplicación de prueba (27.1.1) difieren. Consulte https://d.android.com/r/tools/test-apk-dependency-conflicts.html para obtener más información. Información: Tareas de Gradle [: app: generateDebugSources,: app: generateDebugAndroidTestSources,: app: mockableAndroidJar]

Esta es la captura de pantalla de mi proyecto. Haga clic aquí para ver la captura de pantalla del error que recibí.

También intenté agregar este código a mi dependencia .. androidTestCompile ''com.android.support:support-annotations:23.3.0'' esto no funcionó. También probé 27.1.1 y 26.1.0 .. eso tampoco funcionó.


Agrega esto a tu archivo de gradle.

implementation ''com.android.support:support-annotations:27.1.1''


Agregar esto a build.gradle (aplicación de módulo) funcionó para mí:
compile ''com.android.support:support-annotations:27.1.1''


Agregue esta línea bajo las dependencias en su archivo de gradle

compile ''com.android.support:support-annotations:27.1.1''


Agregue la línea de abajo en su archivo app.gradle antes del bloque de dependencias.

configurations.all { resolutionStrategy { force ''com.android.support:support-annotations:26.1.0'' } }

También hay una captura de pantalla a continuación para una mejor comprensión.

  1. el bloque configurations.all solo será útil si desea que su SDK de destino sea 26. Si puede cambiarlo a 27, el error desaparecerá sin agregar el bloque de configuración en el archivo app.gradle.

  2. Hay una forma más si eliminaría toda la implementación de prueba del archivo app.gradle, resolvería el error y en este caso no necesita agregar el bloque de configuración ni cambiar la versión de diana de los objetivos.

Espero que ayude.


Basado en su captura de pantalla encontré dos soluciones de trabajo:

Primera solución : agregue a las dependencias de su módulo de gradle esta línea

compile ''com.android.support:support-annotations:27.1.1''

y sincroniza tu proyecto

Nota: si está utilizando Android Studio 3+, cambie la compile a la implementation

Segunda solución : configure las propiedades de todo el proyecto que se encuentran en la documentación https://developer.android.com/studio/build/gradle-tips.html#configure-project-wide-properties

En el proyecto Gradle agregue esta línea:

// This block encapsulates custom properties and makes them available to all // modules in the project. ext { // The following are only a few examples of the types of properties you can define. compileSdkVersion = 26 // You can also use this to specify versions for dependencies. Having consistent // versions between modules can avoid behavior conflicts. supportLibVersion = "27.1.1" }

Luego, para acceder a esta sección, cambie la línea compileSdkVersion para que sea

compileSdkVersion rootProject.ext.compileSdkVersion

y en dependencies sección de dependencies , cambie la biblioteca importada para que sea así:

compile "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"

y sincroniza tu proyecto

Nota: si está utilizando Android Studio 3+, cambie la compile a la implementation

Para la diferencia entre compile e implementation mire esto. ¿Cuál es la diferencia entre implementación y compilación en gradle?


Esto se debe a un conflicto de versiones, para resolverlo, simplemente fuerce una actualización de su versión de anotaciones de soporte, agregando esta línea en su módulo: aplicación gradle

implementation (''com.android.support:support-annotations:27.1.1'')

Espero que esto resuelva tu problema ;)

Editar

Casi lo olvido, puede declarar una propiedad adicional ( https://docs.gradle.org/current/userguide/writing_build_scripts.html#sec:extra_properties ) para la versión, vaya a su proyecto (o su archivo superior) gradle, y declare su soporte, o solo para este ejemplo, la versión de anotación var

ext.annotation_version = "27.1.1"

Luego en su módulo gradle reemplazarlo con:

implementation ("com.android.support:support-annotations:$annotation_version")

Esto es muy similar a la solución @emadabel, que es una buena alternativa para hacerlo, pero sin el bloqueo, o el prefijo de proyecto de rootproject .


No te preocupes, es simple:

Vaya a la estructura del directorio "Proyecto" y, a continuación, vaya a "Secuencias de comandos de Gradle" y en su interior vaya a "build.gradle (Module: app)" y haga doble clic en él.

Ahora: desplácese hacia abajo en el programa y, a continuación, vaya a la sección de dependencias: Me gusta a continuación

dependencias {

implementation fileTree(dir: ''libs'', include: [''*.jar'']) implementation ''com.android.support:appcompat-v7:26.1.0'' implementation ''com.android.support.constraint:constraint-layout:1.1.2'' testImplementation ''junit:junit:4.12'' androidTestImplementation ''com.android.support.test:runner:1.0.2'' androidTestImplementation ''com.android.support.test.espresso:espresso-core:3.0.2''

}

Ahora en esto Borre las dos últimas líneas de código y reconstruya la aplicación y ahora funcionará

Las dependencias deben ser:

dependencias {

implementation fileTree(dir: ''libs'', include: [''*.jar'']) implementation ''com.android.support:appcompat-v7:26.1.0'' implementation ''com.android.support.constraint:constraint-layout:1.1.2'' testImplementation ''junit:junit:4.12''

}

RECONSTRUIR LA APLICACION Y FUNCIONA !!


Otra forma sencilla de resolver este problema es editar tu build.gradle (aplicación):

  1. Vaya a la etiqueta de android y cambie compileSdkVersion 26 a compileSdkVersion 27
  2. Vaya a la etiqueta defaultConfig y cambie targetSdkVersion 26 por targetSdkVersion 27
  3. Llegar a dependencies etiqueta de dependencies y cambiar la implementation ''com.android.support:appcompat-v7:26.1.0'' a la implementation ''com.android.support:appcompat-v7:27.1.1''

Si cambiar la versión de sdk de destino no ayuda, entonces si tiene alguna dependencia con la versión 3.0.2 , cámbielo a 3.0.1 .

por ejemplo, cambio

androidTestImplementation ''com.android.support.test.espresso:espresso-contrib:3.0.2''

a

androidTestImplementation ''com.android.support.test.espresso:espresso-contrib:3.0.1''


Si usa la versión 26, la versión de las dependencias debería ser 1.0.1 y 3.0.1 , es decir, de la siguiente manera:

androidTestImplementation ''com.android.support.test:runner:1.0.1'' androidTestImplementation ''com.android.support.test.espresso:espresso-core:3.0.1''

Si utiliza la versión 27, la versión de las dependencias debería ser 1.0.2 y 3.0.2 , es decir, de la siguiente manera

androidTestImplementation ''com.android.support.test:runner:1.0.2'' androidTestImplementation ''com.android.support.test.espresso:espresso-core:3.0.2''


Si usas Android Studio 3.1. + O superior

solo pon esto en tus dependencias de gradle:

implementation ''com.android.support:support-annotations:27.1.1''

En general de esta manera:

dependencies { implementation fileTree(dir: ''libs'', include: [''*.jar'']) implementation ''com.android.support:appcompat-v7:26.1.0'' implementation ''com.android.support.constraint:constraint-layout:1.1.2'' testImplementation ''junit:junit:4.12'' androidTestImplementation ''com.android.support.test:runner:1.0.2'' androidTestImplementation ''com.android.support.test.espresso:espresso-core:3.0.2'' implementation ''com.android.support:support-annotations:27.1.1'' }


Tengo el mismo problema, en build.gradle (Module: app) agregue la siguiente línea de código dentro de las dependencias:

dependencies { ... compile ''com.android.support:support-annotations:27.1.1'' }

Me funcionó perfectamente


Una mejor solución se explica en la explicación oficial . Dejé la respuesta que he dado antes bajo la línea horizontal.

Según la solución hay:

Use una etiqueta externa y escriba el siguiente código a continuación en el archivo build.gradle de nivel superior . Va a cambiar la versión a una variable en lugar de a un número de versión estática.

ext { compileSdkVersion = 26 supportLibVersion = "27.1.1" }

Cambie los números de versión estática en su archivo build.gradle a nivel de aplicación , el que tiene (Module: app) cerca.

android { compileSdkVersion rootProject.ext.compileSdkVersion // It was 26 for example // the below lines will stay } // here there are some other stuff maybe dependencies { implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}" // the below lines will stay }

Sincroniza tu proyecto y no obtendrás errores.

No es necesario agregar nada a los scripts de Gradle. Instale los SDK necesarios y el problema se resolverá.

En su caso, instale las siguientes bibliotecas desde Preferencias> SDK de Android o Herramientas> Android> Administrador de SDK


Vaya a build.gradle (aplicación de módulo) en su proyecto:

Sigue la foto y cambia esas versiones:

compileSdkVersion: 27 targetSdkVersion: 27

y si Android Studio versión 2: cambia la línea con esta línea:

compile ''com.android.support:appcompat-v7:27.1.1''

de lo contrario cambia la línea con esta línea:

implementation ''com.android.support:appcompat-v7:27.1.1''

Y con suerte, resolverás tu error.