我已经在使用一个使用conversations.im作为基础的应用程序(有应用程序模块)。这个应用程序有免费的,付费的etc产品风格,调试和发布构建类型。此项目已经集成了firebase,并集成了2个应用程序。我在app模块的根目录下有一个google-services.json文件。
现在,我不再使用conversations.im(ejabber),而是使用云firestore实现一个单独的聊天组件。我已经创建了这个组件作为android库模块,我将在我现有的应用程序模块中使用它。
我希望此聊天库有单独的聊天数据,用于调试和发布类型。这将要求我为这个库模块提供唯一的应用程序ids。但是文档上说我不能在库模块中使用applicationId。
我不知道在哪里保存google-services.json文件,是在库模块中,还是在将使用聊天库模块的应用程序模块中。由于限制,看起来不能保存在库中。如果我把它放在app模块里,图书馆聊天模块本身就不能作为一个单独的模块工作。
我应该如何进行这个设置,以便我可以使用不同的google-services.json文件进行调试和发布类型,同时将这个新模块作为一个库。
发布于 2020-02-19 17:42:06
从逻辑上讲,任何android项目都应该能够使用库模块,所有的聊天数据都应该属于该项目,而不是绑定到聊天库。如果我采用这种方法,google-services.json文件应该驻留在app模块中,而不是库模块中。
发布于 2020-02-19 21:32:52
我发现我们不必将google-services.json文件放在库模块中。我们可以将它们保存在使用库模块的app模块中。
现在下一个问题是,是否可以在不同的应用程序视图下查看从同一个应用程序的不同构建版本发送的数据,以便我们不会意外地破坏firestore中的测试数据和生产数据?
发布于 2020-02-20 18:12:50
我已经把这个整理好了。
我不得不创建单独的项目,以保持我的firestore聊天数据用于试运行和生产的分离。这是因为firebase控制台不会显示应用程序中的firestore聊天数据。它显示了聊天数据项目的智慧。因此,不管你的应用程序的构建变量是什么,数据总是会流入一个firestore数据库。为了防止我们想要保持测试和生产数据的整洁,创建一个新的firebase项目是唯一的出路。
感谢大家阅读这个问题。
https://stackoverflow.com/questions/60297215
复制相似问题