因为play商店不允许我上传一个targetSdkVersion为25的apk。因此,我将我的targetSdkVersion从25升级到27,并通过添加依赖项下载了所有必需的库。
我在下面提供了整个build.gradle文件代码以及我所做的修改-
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
apply plugin: 'com.android.application'
android {
compileSdkVersion 27
buildToolsVersion '26.0.2'
defaultConfig {
applicationId "com.myApp"
minSdkVersion 17
targetSdkVersion 27
versionCode 2
versionName "1.1"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
dexOptions {
javaMaxHeapSize "2g"
}
repositories {
mavenCentral()
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.0'
implementation 'com.android.support:design:27.1.0'
implementation 'com.android.support:recyclerview-v7:27.1.0'
implementation 'com.android.support:support-v4:27.1.0'
implementation 'com.jakewharton:butterknife:8.4.0'
implementation 'de.hdodenhof:circleimageview:2.1.0'
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.makeramen:roundedimageview:2.2.1'
implementation 'com.github.whinc:ratingbar:1.1.1'
implementation 'com.iarcuschin:simpleratingbar:0.1.3'
implementation 'com.squareup.retrofit2:retrofit:2.1.0'
implementation 'com.google.code.gson:gson:2.8.0'
implementation 'com.squareup.retrofit2:converter-gson:2.1.0'
implementation 'com.squareup.okhttp3:logging-interceptor:3.4.1'
implementation 'in.srain.cube:grid-view-with-header-footer:1.0.12'
implementation 'com.squareup.retrofit2:converter-scalars:2.1.0'
implementation 'pl.bclogic:pulsator4droid:1.0.3'
implementation 'com.intuit.sdp:sdp-android:1.0.4'
implementation 'com.mcxiaoke.volley:library:1.0.19'
implementation 'com.uncopt:android.justified:1.0'
implementation 'com.android.support:multidex:1.0.1'
implementation 'com.github.chrisbanes.photoview:library:1.2.4'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.github.bluejamesbond:textjustify-android:2.1.6'
androidTestImplementation 'junit:junit:4.12'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
}
但是在同步之后,我得到了以下错误-
信息:分级任务:app:generateDebugSources,:app:generateDebugAndroidTestSources,:app:mockableAndroidJar C:\Users\admin.gradle\caches\transforms-1\files-1.1\appcompat-v7-27.1.0.aar\ad0857f7c335bc06a588407b354d6c8b\res\values\values.xml 错误:(251,5)错误:资源‘attr/ value’with‘的重复值。 错误:(251,5)错误:以前在这里定义的资源。 K:\my-app\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml 错误:(484)资源‘attr/ with’with‘的重复值。 错误:(459)以前在这里定义的资源。 Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2错误:查看日志获取详细信息 错误:任务执行失败“:app:mergeDebugResources”。 错误: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2错误:检查日志中的详细信息:在9s信息中生成失败:6错误信息:0警告信息:参见控制台中的完整输出
由于我不能回滚回targetSdkVersion 25,请建议我解决这个问题的任何解决方案,并将targetSdkVersion升级到27。
发布于 2018-12-31 15:49:25
( a)您需要使用正确的构建工具,即版本27.0.3
。我只是想知道为什么您更新为API 27
而不是当前API 28
;这将使用构建工具版本28.0.3
。
并且您必须修复这些无效资源;一个重复的attr/font
与com.android.support:appcompat-v7:27.1.0
冲突。这来自于项目的XML中出现的任何<attr name="font" format="string"/>
,必须删除或重命名。
( c)将buildscript
(很可能是两次)添加到模块级的build.gradle
中是没有意义的。apply plugin: 'com.android.application'
也存在两次;这个build.gradle
是一团糟。
发布于 2018-12-31 15:13:00
可能与this question重复
TLDR尝试将库属性重命名为其他(textFont)¯\_(ツ)_/
发布于 2018-12-31 15:15:32
试着添加:
classpath 'com.android.tools.build:gradle:3.2.1'
对于依赖项部分中的项目级build.gradle (可能需要将gradle -包装器属性中的gradle升级到4.6 ):
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
并将应用程序级的buildToolsVersion提高到28.0.3。然后在项目目录中的终端中清除项目或做'./gradlew清理‘(可以使用android终端)。
https://stackoverflow.com/questions/53988759
复制相似问题