【发布时间】:2017-11-16 23:38:48
【问题描述】:
我有一个 ionic android 移动应用程序,它连接到 ruby on rails api 服务器 这个应用程序使用 postgresql 作为数据库服务器。
每当我创建一个新功能时,我都会将 api 和新应用程序都部署到应用商店,并将 api 和应用程序的各自版本(它们有自己的版本编号顺序)。
该 api 已部署到服务器,但用户设备上的应用程序不经常更新,因此以下两种情况发生在我身上
案例 1:添加新列
发布时会出现问题,例如,我在 db 中的某些表中添加了很少的新列,以捕获相应文本字段也已添加到应用程序 UI 的附加信息。
在这里,较新版本应用的用户将按预期工作(将这 2 个信息发送到列),但旧版本不会发送这 2 个字段值
案例 2:列被删除
例如,我正在以一种主要方式重新构建应用程序,并且必须对数据库进行规范化,因为它之前效率低下,甚至会导致表等被破坏或删除几列。
在这里,旧版本的应用程序只会崩溃或无法运行。
我觉得我构建的每个业务应用程序都需要管理相同的场景,这应该是所有人的共同问题
我正在编写一些自定义逻辑,应用程序将在连接到 api 服务器时检查“更新标志”以及应用程序的版本是否设置为 强制更新以使其与 api 版本一起使用,然后应用程序将被重定向到 play/应用程序商店。
我想知道大家是如何处理这个问题的,我的做法是否正确。
是否有任何 Rails 插件或库已经解决了这个特殊问题 或帮助这样做。 我知道有很多可用的版本控制 gem,但他们不处理这个问题 [强制更新应用程序]
请指导
【问题讨论】:
标签: ruby-on-rails api mobile-application api-management api-versioning