Не удалось найти реализацию метода () для аргументов [com.google.android.gms: play-services-base: 16.0.1] - PullRequest
0 голосов
/ 11 января 2019

Кажется, что этот вопрос повторяется, но я пытаюсь добавить реагировать нативный firebase к моему проекту в Android, но я получаю эту знаменитую ошибку при попытке запустить проект:

Не удалось найти реализацию метода () для аргументов [com.google.android.gms: play-services-base: 16.0.1] для объекта типа org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

Я много искал, но все найденные решения не помогли мне. Вот мой build.gradle: // Файл сборки верхнего уровня, в который можно добавить параметры конфигурации, общие для всех подпроектов / модулей.

buildscript {
    ext {
        buildToolsVersion = "27.0.3"
        minSdkVersion = 16
        compileSdkVersion = 27
        targetSdkVersion = 26
        supportLibVersion = "27.1.1"
    }
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0'
        classpath 'com.google.gms:google-services:4.2.0'
        // This should be here already
        implementation project(':react-native-firebase')

        // Firebase dependencies
        implementation "com.google.android.gms:play-services-base:16.0.1"
        implementation "com.google.firebase:firebase-core:16.0.6"

        implementation "com.google.firebase:firebase-firestore:17.1.5"

        implementation "com.google.firebase:firebase-ads:15.0.1"
        implementation "com.google.firebase:firebase-auth:16.1.0"

        implementation 'me.leolin:ShortcutBadger:1.1.21@aar'
        implementation "com.google.firebase:firebase-messaging:17.3.4"
        implementation "com.google.firebase:firebase-database:16.0.5"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        //classpath 'com.google.gms:google-services:3.2.0'

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

}

allprojects {
    repositories {
        mavenLocal()
        google() // <-- Add this line above jcenter
        jcenter()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url "$rootDir/../node_modules/react-native/android"
        }
    }
}


task wrapper(type: Wrapper) {
    gradleVersion = '4.4'
    distributionUrl = distributionUrl.replace("bin", "all")
}

Также вот мой package.json:

{
  "name": "xxx",
  "version": "x.0.x",
  "private": true,
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest"
  },
  "dependencies": {
    "react": "16.6.3",
    "react-native": "0.57.8",
    "react-native-animatable": "^1.3.1",
    "react-native-firebase": "^5.2.0",
    "react-native-i18n": "^2.0.15",
    "react-native-linear-gradient": "^2.5.3"
  },
  "devDependencies": {
    "babel-jest": "23.6.0",
    "jest": "23.6.0",
    "metro-react-native-babel-preset": "0.51.1",
    "react-test-renderer": "16.6.3"
  },
  "jest": {
    "preset": "react-native"
  }
}

Можете ли вы помочь мне, где проблема. Заранее спасибо

1 Ответ

0 голосов
/ 11 января 2019
        classpath 'com.android.tools.build:gradle:3.2.0'
        classpath 'com.google.gms:google-services:4.2.0'

Среди прочего; они должны быть в вашем проекте build.gradle (android / build.gradle), а не в вашем приложении build.gradle (android / app / build.gradle) и во всех implementation зависимостях вашего приложения, а не вашего проекта.

См. Следующий рабочий пример проекта build.gradle:

https://github.com/invertase/react-native-firebase/blob/master/tests/android/build.gradle#L9-L11

и Gradle сборки приложения:

https://github.com/invertase/react-native-firebase/blob/master/tests/android/app/build.gradle

Спасибо, Салакар @ React Native Firebase

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