【问题标题】:How can we add Admob and Firebase crashlytics to Android studio bumble bee Build.Gradle file我们如何将 Admob 和 Firebase crashlytics 添加到 Android Studio Bumble Bee Build.Gradle 文件中
【发布时间】:2022-07-10 08:51:57
【问题描述】:

我们如何将 Admob 和 Firebase crashlytics 添加到 Android Studio Bumble Bee 中

之前的 build.gradle:是这样的

buildscript {
    repositories {
        google()
        mavenCentral()
        maven { url 'https://jitpack.io' }
    }
    dependencies {
        classpath "com.android.tools.build:gradle:7.0.4"
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.10"
        // Add the following line:
        classpath 'com.google.gms:google-services:4.3.10'  // Google Services plugin
        // Add the Crashlytics Gradle plugin
        classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'

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

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

但是现在的变化看起来像这样

plugins {
    id 'com.android.application' version '7.1.0' apply false
    id 'com.android.library' version '7.1.0' apply false
    id 'org.jetbrains.kotlin.android' version '1.6.10' apply false

    

}

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

我尝试添加这些行

// Add the following line:
        id 'com.google.gms:google-services' version '4.3.10' apply false
        // Google Services plugin
        // Add the Crashlytics Gradle plugin
        id 'com.google.firebase:firebase-crashlytics-gradle' version '2.8.1' apply false

但它的错误是

Caused by: org.gradle.plugin.internal.InvalidPluginIdException: plugin id 'com.google.gms:google-services' is invalid: Plugin id contains invalid char ':' (only ASCII alphanumeric characters, '.', '_' and '-' characters are valid)
    at org.gradle.plugin.use.internal.DefaultPluginId.validate(DefaultPluginId.java:65)
    at org.gradle.plugin.use.internal.DefaultPluginId.of(DefaultPluginId.java:48)
    at org.gradle.plugin.use.internal.PluginRequestCollector$PluginDependencySpecImpl.<init>(PluginRequestCollector.java:139)
    at org.gradle.plugin.use.internal.PluginRequestCollector$PluginDependencySpecImpl.<init>(PluginRequestCollector.java:129)
    at org.gradle.plugin.use.internal.PluginRequestCollector$PluginDependenciesSpecImpl.id(PluginRequestCollector.java:116)

【问题讨论】:

    标签: android firebase android-gradle-plugin admob crashlytics


    【解决方案1】:

    像这样添加com.google.gms.google-servicescom.google.firebase.crashlytics

    plugins {
        id 'com.android.application' version '7.1.0' apply false
        id 'com.android.library' version '7.1.0' apply false
        id 'org.jetbrains.kotlin.android' version '1.6.10' apply false
    
        
        id 'com.google.gms.google-services' version '4.3.10' apply false  // Google Services plugin
        // Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics' version '2.8.1' apply false
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    

    【讨论】:

    • 这是新方法
    【解决方案2】:

    plugins上方添加buildscript

    buildscript {
      dependencies {
        // Add our classpath 
         classpath 'com.google.gms:google-services:4.3.10'
         classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1' 
     }
    }
     plugins {
          id 'com.android.application' version '7.1.0' apply false
          id 'com.android.library' version '7.1.0' apply false
    }
    
    task clean(type: Delete) {
       delete rootProject.buildDir
    }
    

    【讨论】:

    • 这种方法会干扰很多功能,比如绑定...
    【解决方案3】:
    in (<project>/build.gradle):
    
        buildscript {
            repositories {
                google()
            }
        
            dependencies {
                classpath 'com.google.gms:google-services:4.3.13'
            }
        }
        
        
        // Top-level build file where you can add configuration options common to all sub-projects/modules`.
    
    and in  (<project>/<app-module>/build.gradle)
    
        plugins {
            id 'com.android.application'
            id 'org.jetbrains.kotlin.android'
            id 'com.google.gms.google-services'//this one
        }
    
    and this in dependencies
    
        implementation platform('com.google.firebase:firebase-bom:30.2.0')
        implementation 'com.google.firebase:firebase-analytics-ktx'
    

    【讨论】:

      猜你喜欢
      • 2015-09-14
      • 1970-01-01
      • 2021-09-26
      • 2013-07-02
      • 2022-12-01
      • 2016-08-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多