Pregunta Error al recuperar Parent para el elemento: no se encontraron recursos que coincidan con el nombre dado después de actualizar a AppCompat v23


Siempre programé Android con Eclipse y decidí comenzar a migrar a Estudio Android. Decidí usar el mismo SDK que ya tenía para Eclipse, entonces:

  • Comenzó un nuevo proyecto
  • Establecer un mínimo de SDK 4.0 (Nivel API 14)
  • Elija la opción de actividad en blanco
  • Nombres predeterminados usados ​​para el nombre de la actividad y el nombre del diseño
  • Hit Finish

Después de unos segundos, Gradle termina la construcción y me arroja dos errores con los siguientes mensajes en el archivo Teste4 \ app \ build \ intermedios / exploded-aar \ com.android.support \ appcompat-v7 \ 23.0.0 \ res \ values -v23 \ values-v23.xml:

Error: (2) Error al recuperar el elemento primario para el elemento: no se encontró ningún recurso que coincida con el nombre de pila 'android: TextAppearance.Material.Widget.Button.Inverse'.

  Error: (2) Error al recuperar el elemento primario para el elemento: no se encontró ningún recurso que coincida con el nombre de pila 'android: Widget.Material.Button.Colored'.

Debajo Archivo -> Estructura del proyecto -> Módulos: aplicación (columna izquierda) -> pestaña Propiedades, Tengo configuradas las siguientes versiones:

  • "Compilar versión Sdk": Android 5.1 (API nivel 22)
  • "Versión de herramientas de compilación": 23.0.2

¿Qué debo hacer para arreglar esto?

Ya probé lo que se sugirió en la pregunta de desbordamiento de pila appcompat-v7: 21.0.0 ': no ​​se encontraron recursos que coincidan con el nombre de pila: attr' android: actionModeShareDrawable ', pero no funcionó.


720
2017-08-18 14:39


origen


Respuestas:


La versión de compilación del SDK debe coincidir con la versión principal de la biblioteca de soporte.

Como está utilizando la versión 23 de la biblioteca de soporte, debe compilar contra la versión 23 del SDK de Android.

Alternativamente, puede seguir compilando contra la versión 22 del Android SDK al cambiar a la última biblioteca de soporte v22.


1110
2017-08-18 14:47



Esto sucede porque después de las actualizaciones, Android Studio usa API versión 23 por defecto.

Lo siguiente funcionó para mí:

prensa Ctrl + Cambio + Alt + S para llegar a la página de estructura del proyecto. Ve a la pestaña de propiedades y cambia 23.0.0 a 22.0.1 (o equivalente a lo que estaba usando antes) en el área de herramientas de compilación y reconstruya su proyecto.

Si eso no funciona, ve a gradle: aplicación y entonces

compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.1'

Editar v7: 23.0.0 a v7: 22.2.1 como se muestra arriba y sincronizar gradle. Esto definitivamente funcionará.


135
2017-08-27 02:45



Cuando actualiza su Android Studio, usa API versión 23 de forma predeterminada, que es la razón principal de su ocurrencia. Asi que,

Al principio, verifique su versión de AppCompat en build.gradle (Módulo: aplicación) Es decir,

Enter image description here

Si después de cambiar a 23 aparece un error, simplemente descárguelo

Compile Sdk Version to API 23, and Build Tools Version to 23.0.0

desde SDK Manager. Si ya se descargó, entonces:

1. Go to SDK Manager and
2. Under Project Structure, change *Compile SDK Version* to API 23, and *Build Tools Version* to 23.0.0

Haga clic en el botón Administrador de SDK y abra el cuadro de diálogo.

Enter image description here

Haga clic en Plataforma SDK y compruebe si Android 6.0 está descargado o no.

si no, entonces descárgalo primero. Después de completar la descarga, haga clic Aplicar.

Enter image description here

Ahora necesita aplicar cambios a su proyecto desde la configuración. Entonces presione Ctrl + Alt + Cambio + S para abrir la configuración

  1. Haga clic en la aplicación de la lista.
  2. Haga clic en propiedades
  3. Cambia tu Compilar la versión del SDK a la API 23
  4. Cambia tu Versión de herramientas de compilación a 23.0.0

Enter image description here

No te olvides de reconstruir tu proyecto.

Entonces tu error desaparecerá.


112
2017-09-03 06:49



Si ha tratado de cambiar el destino a una versión anterior de GooglePlayServices o AppCompatv7 y no funciona, verifique si tiene alguna dependencia de bibliotecas de proyectos, este proyecto se orientará a la última versión de cualquiera de estas bibliotecas. Me pasó a mí con el proyecto de la Biblioteca de Google Maps Utils:

reemplazar:

compile 'com.google.android.gms:play-services:+'

a

compile 'com.google.android.gms:play-services:8.3.0'

Luego puede continuar la API de orientación completa 22

Si todavía no se compila, a veces es útil establecer compileSdkVersion API en 23 y targetSdkVersion en 22.


71
2017-12-18 09:10



Estoy de acuerdo con la respuesta anterior. La versión de compilación del SDK debe coincidir con la biblioteca de soporte. Aquí esta lo que hice.

  1. Puede ir al Administrador de SDK y, bajo SDK Platform, instalar el Android 5.X con API nivel 23.
  2. En Estructura del proyecto, cambie la versión de compilación SDK a API 23 y la versión de Herramientas de compilación a 23.0.0.

Entonces debería construir sin problema.


36
2017-08-24 15:34



Necesita establecer compileSdkVersion en 23.

Desde API 23 Android eliminó los paquetes Apache Http en desuso, así que si los usa para las solicitudes del servidor, necesitará agregar useLibrary 'org.apache.http.legacy' a build.gradle como se indica en este enlace:

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0"
    ...

    //only if you use Apache packages
    useLibrary 'org.apache.http.legacy'
}

23
2017-10-18 05:26



Este problema se plantea porque ahora la versión de compilación del SDK debe coincidir con la versión principal de la biblioteca de soporte de Android.

En mi caso tengo el Android Support Library versión 23, así que tuve que compilar contra Android SDK version 23, y tuve que cambiar esto en mi build.gradle archivo:

enter image description here

Bueno, algunos de ustedes necesitarán instalar el SDK, Android 6.0 (API 23)

enter image description here

y no olvides Sincronizar proyecto con archivos gradle


16
2017-10-08 23:45



android {
    compileSdkVersion 23
    buildToolsVersion '23.0.1'

defaultConfig {
    applicationId ""
    minSdkVersion 14
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
  }
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.google.code.gson:gson:2.3.1'
compile 'com.android.support:recyclerview-v7:23.0.0'
compile 'com.android.support:appcompat-v7:23.0.1'
}

12
2017-09-15 13:26