android - ionic4 Android 无法添加任务 ':app:processDebugGoogleServices',因为该名称的任务已存在

标签 android angular firebase cordova ionic-framework

我要问的问题已经有人问了here , herehere .不幸的是,没有人为我工作。

我目前正在开发 ionic4 应用程序并尝试在 Android 上运行该应用程序。我需要使用来自 firebase 服务的 FCM 和 firebase 电话身份验证。首先,我已经将 FCM 添加到项目中,它构建并运行良好,但是,在使用来自 this 的以下命令添加 firebase 电话身份验证插件之后:

ionic cordova 插件添加 cordova-plugin-firebase --save npm 安装 angularfire2 firebase --save

现在我要提供一些代码:

项目.properties:

    target=android-27
android.library.reference.1=CordovaLib
android.library.reference.2=app
cordova.system.library.1=com.squareup.okhttp3:okhttp-urlconnection:3.10.0
cordova.system.library.2=com.android.support:support-v4:24.1.1+
cordova.system.library.3=com.android.support:support-annotations:27.+
cordova.system.library.4=com.google.firebase:firebase-core:10.+
cordova.system.library.5=com.google.firebase:firebase-messaging:10.+
cordova.gradle.include.1=cordova-plugin-fcm-with-dependecy-updated/raihan-FCMPlugin.gradle
cordova.gradle.include.2=cordova-support-google-services/raihan-build.gradle
cordova.system.library.6=com.google.firebase:firebase-auth:16.1.+

Package.json

    {
  "name": "raihan",
  "version": "0.0.1",
  "author": "Ionic Framework",
  "homepage": "https://ionicframework.com/",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/common": "^7.2.2",
    "@angular/core": "^7.2.2",
    "@angular/forms": "^7.2.2",
    "@angular/http": "^7.2.2",
    "@angular/platform-browser": "^7.2.2",
    "@angular/platform-browser-dynamic": "^7.2.2",
    "@angular/router": "^7.2.2",
    "@ionic-native/camera": "^5.5.1",
    "@ionic-native/core": "^5.0.0",
    "@ionic-native/fcm": "^5.5.1",
    "@ionic-native/file": "^5.5.1",
    "@ionic-native/file-path": "^5.5.1",
    "@ionic-native/file-transfer": "^5.5.1",
    "@ionic-native/firebase-authentication": "^5.5.1",
    "@ionic-native/http": "^5.5.1",
    "@ionic-native/ionic-webview": "^5.5.1",
    "@ionic-native/splash-screen": "^5.0.0",
    "@ionic-native/status-bar": "^5.0.0",
    "@ionic/angular": "^4.1.0",
    "@ionic/pro": "2.0.4",
    "@ionic/storage": "^2.2.0",
    "@types/jquery": "^3.3.29",
    "angularfire2": "^5.1.3",
    "cordova-android": "7.1.4",
    "cordova-browser": "5.0.4",
    "cordova-plugin-advanced-http": "^2.0.9",
    "cordova-plugin-camera": "^4.0.3",
    "cordova-plugin-device": "^2.0.2",
    "cordova-plugin-fcm-with-dependecy-updated": "^2.4.0",
    "cordova-plugin-file": "^6.0.1",
    "cordova-plugin-file-transfer": "^1.7.1",
    "cordova-plugin-filepath": "^1.5.5",
    "cordova-plugin-firebase-authentication": "^1.1.2",
    "cordova-plugin-ionic-keyboard": "^2.1.3",
    "cordova-plugin-ionic-webview": "^4.0.1",
    "cordova-plugin-splashscreen": "^5.0.2",
    "cordova-plugin-statusbar": "^2.4.2",
    "cordova-plugin-whitelist": "^1.3.3",
    "cordova-sqlite-storage": "^3.2.0",
    "cordova-support-android-plugin": "^1.0.1",
    "cordova-support-google-services": "^1.3.1",
    "core-js": "^2.5.4",
    "firebase": "^6.0.2",
    "jquery": "^3.4.1",
    "rxjs": "~6.5.1",
    "tslib": "^1.9.0",
    "zone.js": "~0.8.29"
  },
  "devDependencies": {
    "@angular-devkit/architect": "~0.13.8",
    "@angular-devkit/build-angular": "~0.13.8",
    "@angular-devkit/core": "~7.3.8",
    "@angular-devkit/schematics": "~7.3.8",
    "@angular/cli": "~7.3.8",
    "@angular/compiler": "~7.2.2",
    "@angular/compiler-cli": "~7.2.2",
    "@angular/language-service": "~7.2.2",
    "@ionic/angular-toolkit": "~1.5.1",
    "@ionic/lab": "^1.0.24",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "~12.0.0",
    "codelyzer": "~4.5.0",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~4.1.0",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "protractor": "~5.4.0",
    "ts-node": "~8.1.0",
    "tslint": "~5.16.0",
    "typescript": "~3.1.6"
  },
  "description": "An Ionic project",
  "cordova": {
    "plugins": {
      "cordova-plugin-advanced-http": {},
      "cordova-sqlite-storage": {},
      "cordova-plugin-whitelist": {},
      "cordova-plugin-statusbar": {},
      "cordova-plugin-device": {},
      "cordova-plugin-splashscreen": {},
      "cordova-plugin-ionic-webview": {
        "ANDROID_SUPPORT_ANNOTATIONS_VERSION": "27.+"
      },
      "cordova-plugin-ionic-keyboard": {},
      "cordova-plugin-file-transfer": {},
      "cordova-plugin-camera": {},
      "cordova-plugin-file": {},
      "cordova-plugin-filepath": {},
      "cordova-plugin-fcm-with-dependecy-updated": {},
      "cordova-plugin-firebase-authentication": {
        "FIREBASE_AUTH_VERSION": "16.1.+"
      }
    },
    "platforms": [
      "browser",
      "android"
    ]
  }
}

Build.gradle

    buildscript {
    repositories {
        maven {
            url "https://maven.google.com"
        }
        jcenter()
    }
    dependencies {

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.android.tools.build:gradle:3.0.1'
    }
}

allprojects {
    repositories {
        maven {
            url "https://maven.google.com"
        }
        jcenter()
    }
    //This replaces project.properties w.r.t. build settings
    project.ext {
      defaultBuildToolsVersion="27.0.1" //String
      defaultMinSdkVersion=19 //Integer - Minimum requirement is Android 4.4
      defaultTargetSdkVersion=27 //Integer - We ALWAYS target the latest by default
      defaultCompileSdkVersion=27 //Integer - We ALWAYS compile with the latest by default
    }
}

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

最佳答案

更改以下内容:

maven 
{
   url "https://maven.google.com"
}

进入这个:

google()

并在 build.gradle 的底部添加:

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

关于android - ionic4 Android 无法添加任务 ':app:processDebugGoogleServices',因为该名称的任务已存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56144747/

相关文章:

Angular 形通用管道

firebase - Firebase 异常 NoClassDefFoundError : LLRBNode$NodeVisitor 的任何解决方法

firebase - 如何使用pnpm工作区协议(protocol)并部署Firebase功能?

java - Socket线程接收时阻塞主线程

javascript - 在 Angular Virtual Scroll 中使用父滚动条而不是子组件滚动条

angular - 如何使用 Firebase 托管为已部署的 Angular Web 应用记录错误

javascript - Firebase 在 dataSnapshot 中获取引用 URL 的完整路径(javascript API)

android - 丢失了我的数据...能够以某种方式从我的 APK 获取我的应用程序源吗?

android - 将xml转换成HL7格式

android - 如何从 Facebook 导入生日列表?