如何将Firebase集成到Ionic项目(android / iOS)中?

时间:2019-01-28 10:21:07

标签: firebase ionic-framework ionic3

我正在阅读文章和测试方法,以使用Firebase在Ionic应用程序中实施分析和推送通知。

我的离子应用程序同时针对android和ios平台,所以我该在哪里放置google-services.json firebase文件?如果我需要在Android和iOS上使用Firebase,是否必须在Firebase中创建2个应用?

我正在阅读许多文章,其中有些说根文件夹,而有些则提到将其放在apps文件夹中。有人说我们必须更新config.xml以包括以下内容:

<resource-file src="google-services.json" target="app\google-services.json" />

我还读到我们需要使用应用程序和项目级别的依赖项来更新gradle文件。

我已将文件放在platform / android / app文件夹中,并且现在一切正常。

我只想知道使用Ionic和Firebase时的最佳做法是什么,我应该在哪里放置文件以及必须进行哪些配置更改?

  1. 用于Ionic安卓应用
  2. 用于Ionic iOS应用
  3. 对于适用于android和iOS平台的Ionic应用程序

1 个答案:

答案 0 :(得分:0)

看看firebase插件的文档: https://github.com/arnesson/cordova-plugin-firebase

对于Android,您具有google-services.json文件,对于iOS,您具有GoogleService-Info.plist文件。 Firebase需要这些文件才能在iOS和Android上运行。您必须将这些文件放置在与config.xml相同的级别。

  

此插件使用钩子(准备后)复制配置   文件放置在正确的位置,即ios的platform / ios / \ /资源和android的platform / android。

因此,config.xml中不需要资源文件指令,因为它是自动复制的。

您不需要编辑build.gradle文件,但是如果您安装了其他Google Play插件(例如地图或admob),则编译可能无法正常进行。

  

如果您安装多个使用以下功能的插件,则您的构建可能会失败   Google Play服务。这是由插件安装引起的   不同版本的Google Play服务库。这可以是   通过安装cordova-android-play-services-gradle-release解决。

     

如果构建仍失败,则可以尝试安装   cordova-android-firebase-gradle-release。有关更多信息,请阅读   以下有关锁定特定播放版本的评论   服务和基础。建议使用+代替15. +   确保使用正确的版本。

编辑:由于您使用的是cordova-plugin-firebase-analytics而不是cordova-plugin-firebase,因此似乎它们没有实现任何钩子来复制文件。您必须将这些指令放置在config.xml中:

<platform name="android">
  <resource-file src="google-services.json" target="app\google-services.json" />
  ...
<platform name="ios">
  <resource-file src="GoogleService-Info.plist" />
  ...

请务必安装cordova-support-google-services