使用SDK版本23时,我的应用程序运行良好。我尝试将其升级到SDK版本26,但出现构建错误。构建gradle文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion '26.0.0'
packagingOptions {
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/CHANGES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
}
defaultConfig {
applicationId "com.futuremobilitylabs.incentrip"
minSdkVersion 19
targetSdkVersion 26
versionCode 82
versionName "0.8.113"
multiDexEnabled true
testInstrumentationRunner "com.android.test.runner.MultiDexTestRunner"
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dexOptions {
javaMaxHeapSize "2048M"
}
configurations {
all*.exclude module: 'mediarouter-v7'
all*.exclude module: 'support-compat'
compile.exclude group: "org.apache.httpcomponents", module: "httpclient"
}
productFlavors {
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
//compile group: 'org.apache.httpcomponents' , name: 'httpclient-android' , version: '4.3.5.1'
// http://jakewharton.github.io/butterknife/
// https://github.com/daimajia/AndroidSwipeLayout
//compile "com.daimajia.swipelayout:library:1.2.0@aar"
compile 'ch.acra:acra:4.9.1'
compile 'com.android.support:appcompat-v7:26.0.0'
compile 'com.android.support:design:26.0.0'
compile 'com.android.support:recyclerview-v7:26.0.0'
compile 'com.android.support:support-v4:26.0.0'
compile 'com.android.support:multidex:1.0.0'
compile 'com.google.android.gms:play-services:10.2.0'
compile 'com.google.android.gms:play-services-gcm:10.2.0'
compile 'com.google.android.gms:play-services-ads:10.2.0'
compile 'com.google.android.gms:play-services-auth:10.2.0'
compile 'com.google.maps.android:android-maps-utils:0.3.+'
compile 'de.hdodenhof:circleimageview:1.3.0'
compile 'com.jakewharton:butterknife:8.5.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.uber.sdk:rides-android:0.5.3'
compile 'com.google.code.gson:gson:2.8.1'
compile 'org.jsoup:jsoup:1.10.3'
testCompile 'junit:junit:4.12'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
}
apply plugin: 'com.google.gms.google-services'
我得到的构建错误:
构建失败8s 664ms运行构建8s 531ms加载构建12ms配置 生成110ms计算任务图98ms运行任务8s 307ms 指定的Android SDK Build Tools版本(26.0.0)被忽略,因为它 低于Android Gradle的最低支持版本(26.0.2) 插件3.0.1。将使用Android SDK Build Tools 26.0.2。至 禁止显示此警告,请从您的计算机中删除“ buildToolsVersion '26 .0.0'” build.gradle文件,因为现在每个版本的Android Gradle插件 具有构建工具的默认版本。资源 样式/TextAppearance.Compat.Notification.Info(又名 com.app.application:style / TextAppearance.Compat.Notification.Info)不 找到了。资源样式/TextAppearance.Compat.Notification(又名 com.app.application:style / TextAppearance.Compat.Notification)不是 找到了。资源样式/TextAppearance.Compat.Notification.Time(又名 com.app.application:style / TextAppearance.Compat.Notification.Time)不 找到了。资源样式/TextAppearance.Compat.Notification.Title(又名 com.app.application:style / TextAppearance.Compat.Notification.Title) 未找到。链接引用失败。
java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception:AAPT2错误:检查日志 详细信息java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception:AAPT2错误:检查日志 详细信息com.android.tools.aapt2.Aapt2Exception:AAPT2错误:检查 详细记录
我已经阅读了一些帖子,但无法解决此问题:Android SDK 26 build error,Failed to resolve: com.android.support:appcompat-v7:27.+ (Dependency Error)
如何解决此问题?
答案 0 :(得分:1)
问题在下一行。
all*.exclude module: 'support-compat'
将其删除,并使用以下代码排除support-v4库。
all*.exclude module: 'support-v4'
或
all*.exclude group: 'com.android.support', module: 'support-v4'
您还可以从以下特定库中排除support-v4:
compile ('com.jakewharton:butterknife:8.5.1'){
exclude group: 'com.android.support', module:'support-v4'
}