我正在使用Cordova将FCM实现到我的android项目中 当我构建我的项目时,我收到错误“无法在类型为org.gradle.api.internal.artifacts.dsl的对象上找到参数[com.google.firebase:firebase-core:16.0.0]的方法实现()。 dependencies.DefaultDependencyHandler。 “ 这是app目录中的build.gradle文件代码
apply plugin: 'com.android.application'
buildscript {
repositories {
mavenCentral()
jcenter()
maven {
url "https://maven.google.com"
}
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.1.2'
implementation 'com.google.firebase:firebase-core:16.0.0' // Error generating line
}
}
答案 0 :(得分:0)
您应该按照Firebase建议的顺序方式编写存储库和依赖项。
项目级别的build.gradle应该如下所示,文件的路径就在项目内部。
buildscript {
repositories {
google()
jcenter()
mavenCentral()
maven {
url 'Fabric URL'
}
}
dependencies {
classpath 'com.google.gms:google-services:3.3.1'
}
}
allprojects {
repositories {
google()
jcenter()
maven {
url "JIT PACK URL"
}
maven {
url 'MAVEN URL'
}
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
之后你的app级build.gradle应该是这样的,文件的路径在app里面。 C:\ Users \ ABC \ DEF \ Project Name \ app \ build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 27
buildToolsVersion '27.0.3'
flavorDimensions "versionCode"
defaultConfig {
applicationId "App Package Name as "com.companyName.appName""
minSdkVersion 19
targetSdkVersion 27
multiDexEnabled true
versionCode 15
versionName "1.0.12"
}
buildTypes {
release {
minifyEnabled false
debuggable false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
// firebase push notifications
implementation 'com.google.firebase:firebase-messaging:15.0.2'
implementation 'com.google.firebase:firebase-core:15.0.2'
implementation 'com.firebase:firebase-jobdispatcher-with-gcm-dep:0.5.2'
// firebase remote config
implementation 'com.google.firebase:firebase-config:15.0.0'
}
apply plugin: 'com.google.gms.google-services'
如果这对您没有帮助,那么您尝试将所有版本的firebase和firebase远程配置更改为最新版本。 因为有时不同的版本可能会导致问题。