reales - libro de android studio en español pdf
Android Studio 3.1 no puede resolver el símbolo(temas, widget, atributo, etc.) (16)
Actualicé Android Studio hoy a 3.1, y ahora Android Studio dice que no puede resolver símbolos para la mayoría de los recursos (por ejemplo,
styles.xml
en
styles.xml
o
?attr/actionBarSize
).
Esto no parece impedirme construir o ejecutar un emulador hasta ahora, pero estos errores me ponen nervioso.
¿Alguien más ha tenido este problema? ¿Cómo puedo resolverlo? He intentado sincronizar gradle y limpiar mi proyecto, pero parece que no ayuda en absoluto.
¿Algunas ideas?
Estoy usando Android Studio 3.1 con Gradle versión 4.4 y Gradle Plugin 3.1.0
EDITAR: Este problema afecta la actualización a Android Studio 3.1.1, 3.1.2, 3.1.3, 3.1.4, así como a Gradle Plugin a 3.1.1, 3.1.2, 3.1.3 y 3.1.4. Sin embargo, la respuesta a continuación todavía funciona.
La biblioteca de soporte no está sincronizada.
Este error ocurre porque la biblioteca de soporte no está sincronizada con su proyecto. Para volver a sincronizarlo, puede seguir los siguientes pasos:
- Abra el archivo build.gradle del módulo de su aplicación
-
Comente las líneas de
implementation
para la biblioteca de soporte. Para mí se ve así://implementation ''com.android.support:appcompat-v7:27.1.1'' //implementation ''com.android.support:recyclerview-v7:27.1.1'' //implementation ''com.android.support.constraint:constraint-la
-
Sincroniza tu proyecto con gradle. Tendrás algunos errores ahora. No te preocupes por eso.
-
Descomente las líneas de
implementation
que comentó anteriormente.implementation ''com.android.support:appcompat-v7:27.1.1'' implementation ''com.android.support:recyclerview-v7:27.1.1'' implementation ''com.android.support.constraint:constraint-la
-
Sincronice su proyecto con gradle nuevamente.
El error "No se puede resolver el símbolo" debería desaparecer ahora. Esto me ha funcionado varias veces en diferentes proyectos.
Nota
- Si su proyecto tiene varios módulos, debe seguir las instrucciones anteriores para todos los módulos a la vez.
¡Cerrar un proyecto y luego abrirlo como uno existente hace maravillas!
Actualicé mi versión de Gradle a 4.10.1 e hice "arreglar y reimportar". No había ninguna carpeta de bibliotecas debajo de .idea antes. Y luego funcionó
Cerré y volví a abrir el proyecto como proyecto existente de Android Studio (no lo importé), ¡y funcionó! Gracias al comentario de Andrew Glukhoff .
Cierre el proyecto e impórtelo nuevamente. Trabajó para mí hoy.
Cierre y vuelva a abrir el proyecto como proyecto existente de Android Studio
Ejemplo
setContentView ( R .layout.activity_login_ativity);
- Pon el cursor en R
- Haga clic en Alt + Entrar
- Elija la clase de importación R
Trabaja para mi :)
Error similar para mí cuando actualizo a
com.android.tools.build:gradle 3.3.1
y
gradle-4.10.1
He intentado el siguiente método pero no funcionó:
-
Clean Project
-Rebuild Project
-
Invalidate Caches / Restart
-
Compruebe el error
.xml
(no encontré ningún error sobre xml) -
Modificar archivo
.iml
Arreglo este error modificando
com.android.tools.build:gradle 3.2.1
y
Restart my mac
, no sabía cuál puede solucionarlo, pero realmente funciona para mí.
Para mí, el mismo síntoma / error fue causado al arrastrar y soltar una nueva imagen en la carpeta ''drawable-xxhdpi'' con un nombre que a Android Studio no le gustaba, por ejemplo, con un número o mayúscula en el nombre.
No se recibió ningún mensaje de error útil, solo el mensaje ''no se puede resolver el símbolo R''.
Incluso después de sincronizar la aplicación y el proyecto de limpieza y reconstrucción, el problema seguía siendo que ''R'' no se reconoció sin ningún otro error indicado.
Cerrar e importar el proyecto como se sugiere en otras respuestas no funcionó, lo que tiene sentido dado el problema raíz.
Sin embargo, aunque parece que esto no funcionó para otros en el pasado, a juzgar por otras preguntas y respuestas sobre SO, eliminar la nueva imagen de la carpeta dibujable sí funcionó.
Del mismo modo, y una mejor solución, obviamente, cambiar el nombre de la imagen para eliminar los caracteres que a Android no le gustan en los nombres de los recursos y luego hacer un proyecto limpio y / o de reconstrucción también funcionó.
Por alguna razón, esos atributos ya no se encuentran en las 26 bibliotecas.
Para aumentar esas bibliotecas, también debe aumentar su
compileSdk
a 27. Es probable que también tenga que descargar el SDK 27
Versión corta, siguiente va en la aplicación `graddle``
android {
compileSdkVersion 27
//...
}
dependencies {
implementation ''com.android.support:appcompat-v7:27.1.0''
implementation ''com.android.support:design:27.1.0''
//...
}
Versión larga, verifique todos los siguientes archivos:
gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https/://services.gradle.org/distributions/gradle-4.4-all.zip
build.gradle (Proyecto)
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath ''com.android.tools.build:gradle:3.1.0''
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Y finalmente build.gradle (aplicación)
apply plugin: ''com.android.application''
android {
compileSdkVersion 27
defaultConfig {
applicationId "cl.cutiko.testingupdate"
minSdkVersion 21
targetSdkVersion 27
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-rules.pro''
}
}
}
dependencies {
implementation fileTree(dir: ''libs'', include: [''*.jar''])
implementation ''com.android.support:appcompat-v7:27.1.0''
implementation ''com.android.support.constraint:constraint-layout:1.0.2''
implementation ''com.android.support:design:27.1.0''
testImplementation ''junit:junit:4.12''
androidTestImplementation ''com.android.support.test:runner:1.0.1''
androidTestImplementation ''com.android.support.test.espresso:espresso-core:3.0.1''
}
Puede intentar cerrar el proyecto y salir de Android Studio (solo cerrarlo y volver a importarlo no lo hizo por mí). Inicie Android Studio y abra el proyecto nuevamente. Eso funcionó para mí!
Solo importar proyecto nuevamente no funcionó para mí.
Mi solución fue
-
Elimine la carpeta
.idea
dentro de su proyecto. -
Luego cierre el proyecto por
File> Close Project
-
Luego importe el proyecto por
File> New > Import Project
O desde elImport Project (Gradle, Eclipse ADT, etc.)
pantalla de bienvenidaImport Project (Gradle, Eclipse ADT, etc.)
.
Ver captura de pantalla para más información
O
Problema # 1
Mi problema estaba relacionado con la forma en que usé una versión alfa / beta del complemento de Android
File > Project Structure > Project
verifique su
Android Plugin Version
Estaba usando algo llamado
3.3.0-beta
, y aún en otro proyecto
3.1.0-alpha
cambiarlo a
3.2.0
parece aclarar mi problema, no olvides cambiar el que está en build.gradle (Project) también
Problema # 2
Tuve un error en uno de mis archivos .xml.
@string
un recurso
@string
.
Verifique todos sus archivos xml y asegúrese de que estén todos correctos (abrir un archivo xml debería activar el linting de Android Studio, desplazarse por el archivo, debería quejarse en rojo si algo está mal)
Problema # 3
En
build.gradle
diferentes versiones de las bibliotecas de soporte de Android.
p.ej
implementation ''com.android.support:appcompat-v7:28.0.0''
implementation ''com.android.support:support-v4:27.1.0''
Asegúrate de que sean de la misma versión.
Y asegúrese de que Android Studio no se queje de nada dentro de sus dependencias de
gradle
.
Es posible que algunas de sus dependencias también hayan importado diferentes versiones de la biblioteca de soporte de Android.
Pasos a seguir después del # 1, # 2 y # 3
Limpia tu proyecto
Build > Clean Project
Invalidar caché y reiniciar
File > Invalidate Caches / Restart
Después de reiniciar, espere a que termine la construcción de gradle, ¡y listo!
implementation ''com.android.support:appcompat-v7:26.1.0''
implementation ''com.android.support.constraint:constraint-layout:1.1.2''
implementation ''com.android.support:design:26.1.0''
actualice sus dependencias con lo anterior en build.gradle (proyecto)
y ponga el código a continuación en build.gradle (Módulo: aplicación)
classpath ''com.android.tools.build:gradle:3.1.1''
classpath ''io.realm:realm-gradle-plugin:3.7.1''
classpath ''com.google.gms:google-services:3.1.0''