android - 火力地堡不工作?

标签 android android-gradle-plugin firebase-cloud-messaging

在 android studio 中创建一个 Firebase 推送通知应用程序。我做了一切并到处搜索但我找不到任何解决方案。我一次又一次地收到同样的错误。让我发布我的 Gradle 文件代码。我非常需要帮助。

Program type already present: com.google.android.gms.common.AccountPicker

有时

Program type already present: com.google.android.gms.maps.CameraUpdate

这是我的应用程序 gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion rootProject.ext.compileSdkVersion
    buildToolsVersion rootProject.ext.buildToolsVersion
    defaultConfig {
        applicationId "com.Package.Myapp"
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        versionCode 2
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile("com.android.support.test.espresso:espresso-core:$rootProject.ext.espressoVersion", {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile "com.android.support:appcompat-v7:$rootProject.ext.supportLibraryVersion"
    compile "com.android.support.constraint:constraint-layout:$rootProject.ext.constraintLayoutVersion"
    compile "com.google.firebase:firebase-messaging:$rootProject.ext.gmsVersion"
    compile "com.google.android.gms:play-services-vision:$rootProject.ext.gmsVersion"
    compile "com.google.android.gms:play-services-maps:$rootProject.ext.gmsVersion"
    testCompile "junit:junit:$rootProject.ext.junitVersion"

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

这是我的项目gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'
        classpath 'com.google.gms:google-services:3.0.0'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

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

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

ext{
    // Sdk and tools
    minSdkVersion = 15
    targetSdkVersion = 26
    compileSdkVersion = 26
    buildToolsVersion = '26.0.2'

    // App dependencies
    gmsVersion = "11.0.0"
    supportLibraryVersion = '27.0.2'
    guavaVersion = '18.0'
    junitVersion = '4.12'
    mockitoVersion = '1.10.19'
    powerMockito = '1.6.2'
    hamcrestVersion = '1.3'
    runnerVersion = '0.5'
    rulesVersion = '0.5'
    espressoVersion = '2.2.2'
    constraintLayoutVersion = "1.0.2"
}

它是一个简单的 webview 包装器应用程序。我正在尝试在其上实现 Firebase 推送通知服务。

最佳答案

在你的项目 gradle 文件中尝试替换这一行

classpath 'com.google.gms:google-services:3.0.0'

用这个:

classpath 'com.google.gms:google-services:3.2.0'

您也可以尝试更新这些版本:

buildToolsVersion = '27.0.3'
supportLibraryVersion = '27.1.1'

关于android - 火力地堡不工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49829920/

相关文章:

android - 如何使用微调器并从android中的数组填充它

android - 如何在 build.gradle 文件中包含额外的配置文件

android - FCM token 是否在应用程序更新时刷新?

android - 当应用程序处于后台时,Firebase 推送通知不播放声音

android - 将 jar 添加到 Gradle

安卓工作室 : Need to know which folders/files to backup

Android - 图形又大又模糊

android - Gradle 同步失败 : Could not find method android() for arguments on root project on android studio

Android Studio - 没有将 C++ 链接到 Gradle 的选项

javascript - FCM 服务工作线程 setBackgroundMessageHandler