在一个 React 原生应用中同时使用 Firebase 和 Amplify

Posted

技术标签:

【中文标题】在一个 React 原生应用中同时使用 Firebase 和 Amplify【英文标题】:Using both Firebase and Amplify in one React native App 【发布时间】:2021-07-24 00:11:45 【问题描述】:

互联网上有关于 Firebase 与 Amplify 的激烈争论。懂吗。我不明白为什么几乎没有人真正考虑使用两者,或者没有人只是写它。对我来说,两者在不同领域都有明显的优势:

Firebase 在分析和推送通知方面似乎更方便,据我所知,AWS 甚至不提供广告。 Pinpoint 在其文档中相当混乱。 AWS Cognito 对任何使用 AWS 服务作为后端的人来说都更有意义。 无论数据量如何,Firebase 还免费提供所有分析和消息传递,而在 AWS 中,您可以像往常一样立即使用更多 AWS 服务。一旦流量很大,Firebase 存储也比 AWS 贵。

所以我在想为什么不使用 Amplify SDK for Cognito 和 S3 而 Firebase SDK 负责分析、推送通知和广告。我自己没有看到任何缺点,但同样 - 我从未构建过移动应用程序,我是一个纯粹的后端开发人员。谁能提出这个设置的问题,或者只是确认它绝对没问题?

谢谢!

ps。我正在考虑用 react native 编写的应用程序

【问题讨论】:

【参考方案1】:

我很早就开始进行非常相似的研究,因此请谨慎对待这些信息。

关于推送通知,Amplify 的 android 文档包括在 Firebase 中设置您的应用或使用 Pinpoint。该文档可以在这里找到:

Amplify Push Notifications - Getting Started

这似乎与 Firebase 的推送通知功能直接相关,因此我认为您不会获得 Firebase 通过此实现提供的任何其他功能。

关于其他功能,我相信您的评估是正确的,因为您选择使用的任何部署工具链都受制于他们的分析选项。

【讨论】:

以上是关于在一个 React 原生应用中同时使用 Firebase 和 Amplify的主要内容,如果未能解决你的问题,请参考以下文章

ld:在 Xcode 中找不到 -lFirebaseCore 的库反应原生

如何在 React Native 项目中使用 MQTT

react-navigation 跟 原生的 navigator 可以同时存在吗

我可以使用 detox 测试框架来测试 react + react 原生应用吗?

抛弃jQuery,拥抱原生JavaScript

React Native+小程序容器=更高的开发效率