我今天将Android Studio升级到3.1,现在Android Studio说它无法解析大部分资源的符号(例如ThemeOverlay
或styles.xml
中的?attr/actionBarSize
。到目前为止,这似乎并没有妨碍我在模拟器中构建或运行,但这些错误让我感到紧张。
还有其他人遇到过此问题吗?我怎样才能解决它?我尝试过同步gradle和清理我的项目,但它似乎没有任何帮助。
有什么想法吗?
我正在使用带有Gradle版本4.4和Gradle Plugin 3.1.0的Android Studio 3.1
修改 此问题会影响到Android Studio 3.1.1,3.1.2,3.1.3,3.1.4以及Gradle Plugin到3.1.1,3.1.2,3.1.3和3.1.4的更新。但是,下面的答案仍然有效。
答案 0 :(得分:164)
关闭项目并再次导入。今天为我工作。
答案 1 :(得分:19)
关闭并重新打开项目作为现有的Android Studio项目
答案 2 :(得分:16)
发生此错误是因为支持库与您的项目不同步。要使其恢复同步,可以执行以下步骤:
注释掉支持库的@forelse($collection as $item)
some text
@section('section_name')
// link to stylesheet
@endsection
@empty
// something went wrong
@endforelse
行。对我来说看起来像这样:
implementation
使用gradle同步项目。您现在将出现一些错误。不用担心。
取消注释您先前注释掉的//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
行。
implementation
再次使用gradle同步项目。
“无法解析符号”错误现在应该消失了。在不同的项目上,这已经为我工作了好几次。
注意
答案 3 :(得分:9)
答案 4 :(得分:2)
出于某种原因,在26个库中找不到这些属性。要增加这些库,您还必须将compileSdk
增加到27。
您很可能还需要下载sdk 27
简短版本,继续发布应用程序`graddle``
android {
compileSdkVersion 27
//...
}
dependencies {
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:design:27.1.0'
//...
}
长版,请检查以下所有文件:
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(Project)
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
}
最后是build.gradle(app)
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'
}
答案 5 :(得分:2)
关闭一个项目,然后打开现有的项目会产生奇迹!
答案 6 :(得分:2)
再次导入项目对我来说不起作用。
我的解决方法是
.idea
文件夹。File> Close Project
File> New > Import Project
OR 从欢迎屏幕 Import Project (Gradle, Eclipse ADT, etc.)
中导入项目。查看屏幕截图以获取更多信息
或
答案 7 :(得分:1)
您可以尝试关闭项目并退出Android Studio(只关闭并重新导入它并没有为我做这件事)。启动Android Studio并再次打开该项目。这对我有用!
答案 8 :(得分:1)
我关闭并重新打开了与现有Android Studio项目相同的项目(没有导入它),它正常工作了!感谢Andrew Glukhoff的评论。
答案 9 :(得分:0)
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'
使用build.gradle(project)中的上述内容更新您的依赖项
并将以下代码放入build.gradle(Module:app)
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'
答案 10 :(得分:0)
对我来说,相同的症状/错误是由于将新图像拖放到Android Studio不喜欢的名称(例如名称中带有数字或大写字母)的“ drawable-xxhdpi”文件夹中引起的。
没有给出有用的错误消息,只是“无法解析符号R”消息。
即使在同步应用程序以及清理和重建项目之后,仍然存在无法识别“ R”且没有其他错误的问题。
按照其他答案中的建议关闭和导入项目是行不通的,考虑到根本问题,这是有道理的。
但是,即使过去似乎对其他人无效,从SO上的其他问题和答案来看,从drawable文件夹中删除新图像还是行得通的。
同样,一种更好的解决方案显然是重命名图像以删除Android在资源名称中不喜欢的任何字符,然后执行干净和/或重建项目。
答案 11 :(得分:0)
问题1
我的问题与我如何使用Android插件的alpha / beta版本
有关 File > Project Structure > Project
检查您的Android Plugin Version
我使用的是3.3.0-beta
,但是在另一个项目3.1.0-alpha
将其更改为3.2.0
似乎可以解决我的问题,也不要忘记在build.gradle(Project)中也进行更改
问题2
我的.xml文件之一出错。我错过了@string
资源。请检查您所有的xml文件,并确保它们都是正确的(打开xml文件会激活Android Studio linting,滚动浏览该文件,如果出现问题,它应该显示为红色)
问题3
在build.gradle
中,我导入了不同版本的android支持库。例如
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:support-v4:27.1.0'
请确保它们是相同版本。并确保Android Studio在您的gradle
依赖项内没有任何抱怨。可能您的某些依赖项也导入了不同的android支持库版本。
在#1,#2和#3之后采取的步骤
清理项目Build > Clean Project
使缓存无效并重新启动File > Invalidate Caches / Restart
重启后,等待gradle构建完成,然后瞧瞧!
答案 12 :(得分:0)
我将gradle版本更新为4.10.1,并“修复并重新导入”。 .idea之前没有库文件夹。然后它起作用了
答案 13 :(得分:0)
我更新到com.android.tools.build:gradle 3.3.1
和gradle-4.10.1
时出现类似的错误
我尝试了以下方法,但是没有用:
Clean Project
-Rebuild Project
Invalidate Caches / Restart
.xml
错误(我没有发现有关xml的任何错误).iml
文件我通过修改 com.android.tools.build:gradle 3.2.1
和 Restart my mac
来解决此错误,我不知道哪个人可以解决它,但它确实有效为了我 。
答案 14 :(得分:-2)
答案 15 :(得分:-4)
示例
setContentView( R .layout.activity_login_ativity);
为我工作:)