Android Ionic Cordova生成失败,错误为应用插件失败

Android Ionic Cordova生成失败,错误为应用插件失败,android,cordova,ionic-framework,ionic2,ionic-native,Android,Cordova,Ionic Framework,Ionic2,Ionic Native,当我在爱奥尼亚运行命令构建Android项目时- ionic cordova build android或cordova build android 这是我的平台/android/project.properties target=android-26 android.library.reference.1=CordovaLib cordova.gradle.include.1=cordova-support-google-services/luxerus-build.gradle cordov

当我在爱奥尼亚运行命令构建Android项目时-

ionic cordova build android
cordova build android

这是我的平台/android/project.properties

target=android-26
android.library.reference.1=CordovaLib
cordova.gradle.include.1=cordova-support-google-services/luxerus-build.gradle
cordova.gradle.include.2=cordova-plugin-firebase/luxerus-build.gradle
cordova.system.library.1=com.google.gms:google-services:+
cordova.system.library.2=com.google.android.gms:play-services-tagmanager:9.8.0
cordova.system.library.3=com.google.firebase:firebase-core:9.8.0
cordova.system.library.4=com.google.firebase:firebase-messaging:9.8.0
cordova.system.library.5=com.google.firebase:firebase-crash:9.8.0
cordova.system.library.6=com.google.firebase:firebase-config:9.8.0
cordova.system.library.7=com.google.firebase:firebase-perf:9.8.0
有错误的输出


该错误为您提供了额外的解释:

对于输入字符串:“+”

所以问题是你使用的格式

cordova.system.library.1=com.google.gms:google-services:+
如果你使用Android Studio,你也会有一个警告,如

避免在版本号中使用+;可能导致不可预测和 不可重复的构建

在依赖项中使用
+
,可以自动获取最新的 可用版本,而不是特定的命名版本。但是, 不推荐使用;你的构建是不可重复的;你可能有 测试的版本与构建服务器的版本稍有不同 用过。(使用动态版本作为主要版本号更容易 与在次要版本位置使用相比,存在问题。)

因此,与其使用
+
,不如至少给它一个主要版本,如
11.0.+
(只需测试一下,看看哪个版本适合您的项目)。

尝试更改此版本

  cordova.system.library.1=com.google.gms:google-services:+
为此:

  cordova.system.library.1=com.google.gms:google-services:3.1.1 

看起来您对google play服务有另一个依赖项—您必须修复所有依赖项版本,使其更具体,如11.0.+。并尝试使所有这些都匹配,例如,如果firebase使用不同的服务版本,这可能是您的问题

尝试删除您的Android平台,然后再次添加:

爱奥尼亚cordova平台rm android

爱奥尼亚cordova平台添加android


然后再次尝试运行构建。

以上所有答案都非常有用。谢谢用于发布答案

通过遵循这些步骤,我成功了

步骤-1)

步骤-2) 然后在终点站

nano ~/.bash_profile

步骤-3)

步骤-4) 注释行(在文件cordova plugin fcm/project-FCMPlugin.gradle中,行号-13)

步骤-5) 评论行(在文件cordova support google services/project-build.gradle中,行号-16)

步骤-6) 外接程序文件,项目级build.gradle,行号-35

dependencies {
      classpath 'com.android.tools.build:gradle:3.0.0'
}
步骤-7) 在文件project.properties中(版本9.8.0也适用于我!在另一个项目中,为此我使用了9.0.0)


即使在那之后,我还是犯了这个错误

默认FirebaseApp未在此进程processName中初始化。请确保首先调用FirebaseApp.initializeApp(上下文)

我有这个问题。我在android studio的平台上构建了生成的android项目,然后我发现了问题并解决了这个问题

按照以下步骤操作

在platforms文件夹中,android/src/{package name}/MainActivity.java

导入firebase库, *导入com.google.firebase.FirebaseApp

在oncreate方法内部,在super.oncreate(savedinstancestate)下面

添加FirebaseApp.initializeApp(此)

最后一步,

在platforms文件夹中,android/res/values/string.xml

加
***

***可以在googleservice.json文件中找到
“客户”:[
{
“客户信息”:{
“mobilesdk_应用程序_id”:此值


参考(更多详情):


还要将其添加到AndroidManifest.xml中

<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="20" />

就这样。谢谢


上述问题是由于在构建过程中多次应用google services插件而导致的。一旦合并到Cordova Android,该问题就可以解决。Cordova Android确保Cordova支持google services将只运行一次。

感谢您的回答。尝试了不同的版本!仍然是相同的错误。我们如何知道哪个版本有效?是否存在任何问题有什么办法可以解决这个问题吗?嗯,我不习惯Ionic,但对于Gradle来说,最好还是和你的其他库一样,9.8.0。最后一个版本是谢谢!你的回答帮助我完成了工作。为了让它工作,我必须解决很多问题,检查我的答案。有关详细信息,这个文件的第16行是什么?platforms/android/cordova-支持谷歌服务/luxerus-build.gradleOn第16行->应用插件:com.google.gms.googleservices.GoogleServicesPluginAs据我所知。“cordova.system.library.1=com.google.gms:google服务:+”意思是包括所有谷歌服务库。所以你应该评论你的第16行。这是两个谷歌服务库之间的冲突。谢谢!你的回答帮助我完成了工作。为了让它工作,我必须修复很多事情,请查看我的回答。有关详细信息。我想你的一个插件正在使用+包含依赖项,这导致e issueThanks!是的,你是对的。为了让它工作,我必须修复很多东西,即使在解决了(插件正在使用+)之后,检查我的答案。我应该把它作为一个答案发布吗?
ionic cordova platform add android@6.4.0    
//apply plugin: com.google.gms.googleservices.GoogleServicesPlugin
//apply plugin: com.google.gms.googleservices.GoogleServicesPlugin
dependencies {
      classpath 'com.android.tools.build:gradle:3.0.0'
}
target=android-26
android.library.reference.1=CordovaLib
cordova.system.library.1=com.google.firebase:firebase-core:9.0.0
cordova.system.library.2=com.google.firebase:firebase-messaging:9.0.0
cordova.gradle.include.1=cordova-plugin-fcm/luxerus-FCMPlugin.gradle
cordova.gradle.include.2=cordova-plugin-firebase/luxerus-build.gradle
cordova.system.library.3=com.google.gms:google-services:+
cordova.system.library.4=com.google.android.gms:play-services-tagmanager:+
cordova.system.library.5=com.google.firebase:firebase-core:+
cordova.system.library.6=com.google.firebase:firebase-messaging:+
cordova.system.library.7=com.google.firebase:firebase-crash:+
cordova.system.library.8=com.google.firebase:firebase-config:+
cordova.system.library.9=com.google.firebase:firebase-perf:+
cordova.gradle.include.3=cordova-support-google-services/luxerus-build.gradle
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="20" />