Самый высокий код версии Firebase также используется для компиляции библиотеки сервисов воспроизведения - PullRequest
0 голосов
/ 24 мая 2018

Я использую определенную библиотеку сервисов Firebase и Play в своем проекте.После обновления версии плагина Play Services до 4.0.0.Поскольку службы firebase и play теперь используют разные стратегии кодирования версий для каждой библиотеки, код самой высокой версии в одной из них заменяется на все остальные библиотеки.Что приводит к невозможности разрешить библиотеки, которые все еще используют меньшие коды версий.

build.gradle

    buildscript {

    ext.kotlin_version = '1.2.41'

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
        classpath 'com.google.gms:google-services:4.0.0'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        mavenCentral()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

app.gradle

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
//apply plugin: 'kotlin-kapt'
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'

android {
    compileSdkVersion 27
    buildToolsVersion '27.0.3'
    defaultConfig {
        applicationId "com.vanse.android"
        minSdkVersion 19
        targetSdkVersion 27
        versionCode 1
        versionName "8.0"
        multiDexEnabled true
        vectorDrawables.useSupportLibrary = true
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

        manifestPlaceholders = [onesignal_app_id               : ONE_SIGNAL_APP_ID,
                                onesignal_google_project_number: "REMOTE"]
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        targetCompatibility 1.8
        sourceCompatibility 1.8
    }
    lintOptions {
        abortOnError false
    }
}
buildscript {
    repositories {
        maven { url 'https://plugins.gradle.org/m2/' }
    }
    dependencies {
        classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:0.8.1'
    }
}

repositories {
    maven { url 'https://maven.google.com' }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    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.android.support:support-v4:27.1.1'
    implementation 'com.android.support:support-vector-drawable:27.1.1'
    implementation 'com.android.support:multidex:1.0.3'
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support.constraint:constraint-layout:1.1.0'
    implementation 'com.android.support:design:27.1.1'
    implementation 'com.android.support:recyclerview-v7:27.1.1'
    implementation 'com.android.support:cardview-v7:27.1.1'
    implementation 'com.android.support:support-annotations:27.1.1'
    implementation 'com.android.support:mediarouter-v7:27.1.1'

    //To upgrade dependency used in library picasso
    implementation 'com.android.support:exifinterface:27.1.1'
    //To upgrade dependency used in library OneSignal and Facebook
    implementation 'com.android.support:customtabs:27.1.1'
    //FireBase Dynamic Links
    implementation 'com.google.firebase:firebase-core:16.0.0'
    implementation 'com.google.firebase:firebase-invites:16.0.0'
    implementation 'com.google.firebase:firebase-appindexing:15.0.1'
    implementation 'com.google.firebase:firebase-ads:16.0.0'

    //Google Sign In
    implementation 'com.google.android.gms:play-services-auth:15.0.1'
    implementation 'com.google.android.gms:play-services-gcm:15.0.1'
    implementation 'com.google.android.gms:play-services-location:15.0.1'
    implementation 'com.google.android.gms:play-services-base:15.0.1'
    //ChromeCast
    implementation 'com.google.android.gms:play-services-cast-framework:15.0.1'
    //Download Manager
    implementation "com.tonyodev.fetch2:fetch2:2.0.0-RC19"
    implementation "com.tonyodev.fetch2downloaders:fetch2downloaders:2.0.0-RC19"
    implementation "com.tonyodev.fetch2rx:fetch2rx:2.0.0-RC19"
    implementation "com.tonyodev.fetchmigrator:fetchmigrator:2.0.0-RC19"
    //Kotlin Dependency
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    //Network Calls
    implementation 'com.android.volley:volley:1.1.0'
    //JSON Parsing
    implementation 'com.google.code.gson:gson:2.8.2'
    //Push Notification
    implementation 'com.onesignal:OneSignal:[3.9.1, 3.99.99]'
    //Image Loader
    implementation 'com.github.bumptech.glide:glide:4.7.1'
    //Facebook SDK
    implementation 'com.facebook.android:facebook-android-sdk:4.31.0'
    //Detect Memory leaks
    debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.5.4'
    releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'

    //Image Loading library
    implementation 'com.squareup.picasso:picasso:2.71828'
    //Image Caching library
    implementation 'com.squareup.okhttp3:okhttp:3.10.0'
    //For live radio wave layout
    implementation 'me.itangqi.waveloadingview:library:0.3.5'
    //For audio and video player
    implementation 'com.google.android.exoplayer:exoplayer:2.7.3'
    //For multipart file upload
    implementation 'com.koushikdutta.ion:ion:2.2.1'
    //pulse animation
    implementation 'pl.bclogic:pulsator4droid:1.0.3'
    //Payment Gateway
    implementation 'com.razorpay:checkout:1.4.7'

    implementation('io.socket:socket.io-client:1.0.0') {
        exclude group: 'org.json', module: 'json'
    }
    annotationProcessor 'com.github.bumptech.glide:compiler:4.7.1'
//    kapt 'com.github.bumptech.glide:compiler:4.7.1'
    implementation files('libs/tokenautocomplete-2.0.8.jar')
}

apply plugin: 'com.google.gms.google-services'

ERROR

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all files for configuration ':app:debugCompileClasspath'.
> Could not find com.google.firebase:firebase-appindexing:16.0.0.
  Required by:
      project :app
> Could not find com.google.firebase:firebase-ads:16.0.0.
  Required by:
      project :app
> Could not find com.google.android.gms:play-services-auth:16.0.0.
  Required by:
      project :app
> Could not find com.google.android.gms:play-services-gcm:16.0.0.
  Required by:
      project :app
> Could not find com.google.android.gms:play-services-location:16.0.0.
  Required by:
      project :app
> Could not find com.google.android.gms:play-services-base:16.0.0.
  Required by:
      project :app
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0 > com.google.firebase:firebase-dynamic-links:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0 > com.google.firebase:firebase-iid:16.0.0 > com.google.firebase:firebase-iid-interop:16.0.0
> Could not find com.google.android.gms:play-services-cast-framework:16.0.0.
  Required by:
      project :app
> Could not find com.google.firebase:firebase-messaging:16.0.0.
  Required by:
      project :app > com.onesignal:OneSignal:3.9.1
> Could not find com.google.android.gms:play-services-location:16.0.0.
  Required by:
      project :app > com.onesignal:OneSignal:3.9.1
> Could not find com.google.android.gms:play-services-base:16.0.0.
  Required by:
      project :app > com.onesignal:OneSignal:3.9.1
> Could not find com.google.android.gms:play-services-basement:16.0.0.
  Required by:
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-measurement-connector-impl:16.0.0
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-common:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-measurement-connector-impl:16.0.0 > com.google.firebase:firebase-measurement-connector:16.0.0
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0 > com.google.firebase:firebase-dynamic-links:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0 > com.google.firebase:firebase-iid:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0 > com.google.firebase:firebase-iid:16.0.0 > com.google.firebase:firebase-iid-interop:16.0.0
> Could not find com.google.android.gms:play-services-measurement-base:16.0.0.
  Required by:
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-measurement-connector-impl:16.0.0
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0 > com.google.firebase:firebase-dynamic-links:16.0.0
> Could not find com.google.android.gms:play-services-stats:16.0.0.
  Required by:
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0 > com.google.firebase:firebase-iid:16.0.0
> Could not find com.google.android.gms:play-services-tasks:16.0.0.
  Required by:
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-common:16.0.0
      project :app > com.google.firebase:firebase-invites:16.0.0 > com.google.android.gms:play-services-appinvite:16.0.0 > com.google.firebase:firebase-dynamic-links:16.0.0
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0 > com.google.firebase:firebase-iid:16.0.0
> Could not find com.google.android.gms:play-services-ads-identifier:16.0.0.
  Required by:
      project :app > com.google.firebase:firebase-core:16.0.0 > com.google.firebase:firebase-analytics:16.0.0 > com.google.firebase:firebase-analytics-impl:16.0.0

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 36s

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

для тех, кто пришел сюда с такой же проблемой, я понизил версию Firebase с 16.0.1 до 15.0.0, которая аналогична

com.google.android.gms:play-services-maps:15.x.x

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

AGPBI: {"kind":"ошибка", "текст": "Тип программы уже существует: android.support.design.widget.CoordinatorLayout $ Behavior", "sources": [{}], "tool": "D8"}

если это так, пожалуйста, добавьте эту строку в свои зависимости:

implementation 'com.android.support:design-v7:27.1.0'

также используйте ТОЧНУЮ версию, которую я сделал здесь, иначе вы столкнетесь с проблемой

другие вещи, которые вы должны проверить:

    classpath 'com.android.tools.build:gradle:3.1.0'
    classpath 'com.google.gms:google-services:3.0.0'

надеюсь, что это поможет, потому что у меня есть 2 дня, и не стесняйтесь спрашивать больше.счастливое кодирование

0 голосов
/ 24 мая 2018

Эта часть ошибки указывает на то, что используемый вами плагин Gradle (com.onesignal.androidsdk.onesignal-gradle-plugin) содержит ошибку или вам нужна более новая версия.

Не удалось найти com.google.firebase: firebase-appindexing: 16.0.0.Требуется: project: app

https://maven.google.com указывает, что эта библиотека не выпущена (на данный момент).Независимо от этого, я могу окончательно сказать вам, что библиотека не была выпущена в этой версии.

Вот исходный код плагина, показывающий специальный корпус вокруг наших выпусков v15.xx, который (опять-таки либо содержит ошибку, либо вам нужна более новая версия).версия).https://github.com/OneSignal/OneSignal-Gradle-Plugin/blob/master/src/main/groovy/com/onesignal/androidsdk/GradleProjectPlugin.groovy#L293

Если вы удалите плагин, я думаю, вы увидите, что ваше приложение перестает пытаться найти библиотеки 16.0.0, которые не были опубликованы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...