Остановка синхронизации приложения после добавления Mobile Ads SDK - PullRequest
0 голосов
/ 11 февраля 2019

Мое приложение работает нормально, но после добавления Mobile Ads SDK оно перестает синхронизироваться.

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "abc
        minSdkVersion 16
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        vectorDrawables.useSupportLibrary = true
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    sourceSets {
        main {
            assets.srcDirs = ['src/main/assets', 'src/main/assets/images', 'src/main/assets/databases'] 
            res.srcDirs =['src/main/res', 'src/main/res/menu', 'src/main/res/anim', 'src/main/res/values-ja']
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:28.0.0-rc02'
    implementation 'com.android.support.constraint:constraint-layout:1.1.3'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.android.support:support-vector-drawable:28.0.0'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.sothree.slidinguppanel:library:3.4.0'
    implementation 'com.squareup.picasso:picasso:2.71828'
    implementation 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
    implementation 'com.google.android.gms:play-services-ads:17.1.1'
}

Это ошибка.

Ошибка слияния манифеста: атрибут meta-data#android.support.VERSION@value value = (26.0.2) из ​​[com.android.support:recyclerview-v7:26.0.2] AndroidManifest.xml: 25: 13-35 также присутствует в [com.android.support:customtabs:26.1.0] AndroidManifest.xml: 25: 13-35 value = (26.1.0).Предложение: добавьте 'tools: replace = "android: value"' к элементу на AndroidManifest.xml: 23: 9-25: 38, чтобы переопределить.

Я не знаю, что означает ошибка,кто-нибудь сталкивался с такой же проблемой?

Ответы [ 3 ]

0 голосов
/ 11 февраля 2019

Проблема:

Проблема в том, что версия библиотеки поддержки конфликтует.

Решение:

Первый шаг вам нужно попробовать использовать общую версию библиотеки поддержки, вы можете объявить общую переменную:

supportLibraryVersion = 28.0.0

И ссылаться одинаково для всех зависимостей одного и того же пакета:

implementation "com.android.support:appcompat-v7:$supportLibraryVersion"
implementation "com.android.support:support-v4:$supportLibraryVersion"

Второй шаг: Необходимо отладитьсписок зависимостей, используйте команду ./gradlew dependencies, которая выведет дерево зависимостей.Проанализировав дерево зависимостей, вы увидите, какая библиотека внутренне ссылается на какую версию библиотеки поддержки:

Например, эта старая версия библиотеки: com.android.support:recyclerview-v7:26.0.2

0 голосов
/ 11 февраля 2019

Откройте Ваш AndroidManifest.xml. Вы увидите Merged Manifest под ним.Теперь из вашего журнала ошибок.

[com.android.support:recyclerview-v7:26.0.2] AndroidManifest.xml: 25: 13-35 также присутствует на [com.android.support:customtabs:26.1.0]AndroidManifest.xml: 25: 13-35 value = (26.1.0).

Ваш манифест конфликтует с двумя версиями для одной и той же библиотеки. Поэтому нажмите Merged Manifest, и вы получите

добавить 'tools: replace = "android: value"' к элементу на AndroidManifest.xml: 23: 9-25: 38, чтобы переопределить

Нажмите на него.и проблема будет решена.

0 голосов
/ 11 февраля 2019

SDK для мобильных объявлений может иметь версию библиотеки поддержки, которая отличается от используемой в вашем приложении.Ошибка ясно говорит о том, что в вашем файле AndroidManifest.xml другая версия.Ошибка также предлагает -

add 'tools:replace="android:value"' to element at AndroidManifest.xml:23:9-25:38 to override

Также показаны строки, в которые необходимо добавить это.Я думаю, что это должно решить проблему.

...