android - 如何将更新发送到移动应用程序(Android 和 IOS)
问题描述
我制作了一个非常基本的聊天应用程序(无需查看代码)(来自 Angela Yu,flutter 的课程)它与使用 firebase_core、firebase_auth 和 cloud_firestore 包进行身份验证和在云中上传聊天数据的 google firebase 集成火库。
我已经通过 debug.APK(1. 如果它是 release.APK 有关系吗?)在我和我朋友的手机中安装了该应用程序(让我们采取中立的方法,即手机可以是 IOS 或 Android)。
我的目标是,如果我更改我的代码(或者我们说更新我的应用程序),我希望我的两部手机上的应用程序都能更新(如果可能的话自动更新,或者在用户打开应用程序进行更新时发送警报),所有这一切应该免费完成。2.我怎样才能以最简单的方式实现这一目标?. 我知道如果该应用程序位于 Google Play 商店或 App Store 中,则有一种标准方法,但我不想将其上传到商店。
我对此的猜测是,我们将我们的应用程序与服务器集成,这样每次应用程序启动时,它都会检查服务器的更新并要求用户更新并获得更新。如果这是可以实现的,有人可以用下面提到的这两种方法指导我:
3(A)。通过免费的在线服务器(我们可以使用 github 或 firebase 吗?)
3(B)。我可以将自己的笔记本电脑作为服务器并对应用程序进行编码,使其不需要服务器始终在线。(如果我的服务器在线,它会检查更新,否则它会继续)
3(C)。通过付费服务器(仅供参考)
(4) 另外请告诉我为什么我们选择 Cloud Firestore 而不是实时数据库作为聊天应用程序?
(我不想创建网络应用程序)
我不知道如何实现这一切,就像使用什么服务器一样,或者这甚至是可能的。所以请帮我详细解释一下所有(1,2,3(A),3(B),3(c))。任何帮助将非常感激!
解决方案
由于您已经在使用 Cloud Firestore,请考虑在其中创建一个文档,其中包含一个包含最新应用版本的版本号的字段。
在您的应用程序代码中,您在启动时阅读此文档,并根据应用程序自己的版本检查它。如果数据库中的版本较新,请告诉用户升级。
您甚至可以包含有关在哪里/如何在数据库中获取最新版本的说明。这真的很方便你突然不得不在版本之间改变你的发布机制。
推荐阅读
- python - 从 pytest 夹具中的内部函数访问值
- javascript - 为什么这个功能在 Safari 中不起作用?(在 Chrome 中工作正常)
- python-3.x - BERT 文档嵌入
- c# - 从没有承载前缀的授权标头中获取访问令牌
- kubernetes - 为什么 LoadBalancer 服务仍在等待中?
- java - 有没有更好的替代方案或方法来改进代码?
- tensorflow - 为 Tensorflow 2.2 加载 Keras 2.4.3 时出错
- html - Angular 将 html 绑定到 div 而不使用 iframe
- sql - vscode 在正确时将 sql 类型的语法错误视为错误 [已解决]
- javascript - 2 useState 中的一个 useEffect 一个有效,另一个无效,即使它们几乎相同