我希望有人可以对这个问题有所了解。我正在尝试更改支持库版本:
compile 'com.android.support:support-annotations:23.1.0'
compile 'com.android.support:support-v4:23.1.0'
compile 'com.android.support:support-v13:23.1.0'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:cardview-v7:23.1.0'
compile 'com.android.support:recyclerview-v7:23.1.0'
到
compile 'com.android.support:support-annotations:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
compile 'com.android.support:support-v13:23.1.1'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.android.support:cardview-v7:23.1.1'
compile 'com.android.support:recyclerview-v7:23.1.1'
通常看起来像一个简单的小升级已经让我整整一天。基本上在更新gradle.build文件时,我同步 - >干净,并且在IDE上出现了一堆无法解决符号错误,用于支持库中的类。
更令人感兴趣的是,如果我尝试通过adb在手机上运行代码,尽管AS显示为"无法解析符号",它在我的手机上运行得非常好
我尝试过的事情之一:
进一步深入构建目录,它们在两者中都是相似的
建立\中间体\分解-AAR \ com.android.support \程序兼容性-V7 \ 23.1.0 \罐子\ classes.jar
和
建立\中间体\分解-AAR \ com.android.support \程序兼容性-V7 \ 23.1.1 \罐子\ classes.jar
分别生成。与AS不同的是,对于之前的版本," classes.jar"在AS中可以是opened,与新版本一样,它们在AS中cannot be opened。
我觉得我已经把所有可用的选项都耗尽了,所以如果有人能说明如何解决这个问题,我会非常感激。
我的完整gradle.build文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.XXX"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.1.1"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(path: ':XXX', configuration: 'android-endpoints')
testCompile 'junit:junit:4.12'
compile 'com.google.code.gson:gson:2.4'
compile 'org.apache.commons:commons-lang3:3.4'
compile 'com.balysv:material-ripple:1.0.2'
compile 'net.sf.flexjson:flexjson:3.3'
compile 'com.jakewharton:butterknife:7.0.1'
compile 'com.google.android.gms:play-services-ads:8.1.0'
compile 'com.google.android.gms:play-services-identity:8.1.0'
compile 'com.google.android.gms:play-services-gcm:8.1.0'
compile 'com.android.support:support-annotations:23.1.0'
compile 'com.android.support:support-v4:23.1.0'
compile 'com.android.support:support-v13:23.1.0'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.android.support:cardview-v7:23.1.0'
compile 'com.android.support:recyclerview-v7:23.1.0'
}
答案 0 :(得分:2)
我终于解决了:
首先,我更新了gradle插件。
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
}
然后只需构建 - >清理项目,一切都恢复正常。
答案 1 :(得分:1)
我想我已经解决了这个问题。转到项目中的主模块,它通常具有名称 app 。
然后转到> 打开模块设置>在属性中将构建工具版本更改为 23.0.1 。
然后确保打开 build.gradle 文件,并更改compileSDKVersion& buildToolsVersion分别为23和23.0.1。
android {
compileSdkVersion 23
buildToolsVersion '23.0.1'
defaultConfig {
applicationId "id.web.twoh"
minSdkVersion 15
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
您还应该确保项目中的所有模块都具有以 23 开头的compileSdkVersion和buildToolsVersion,因为您将使用支持库的第23版。
答案 2 :(得分:0)
我知道现在已经很晚了,但我遇到了类似的问题。事实证明,问题是由数据绑定库引起的。我在生成的绑定类中的无效引用中引用的代码中出错。我的布局文件使用id webview定义了一个webview,但在代码中我将其引用为webView。纠正错误并进行清理并完全重建后,Android Studio开始识别所有软件包并查看支持库。
答案 3 :(得分:-2)
答案 4 :(得分:-3)
我通过在ToolBar中将Run / Debug Configuration微调器更改为MainActivity(而不是app [androidDepedencies])解决了我的问题......