为了强制安装行(对于Android应用程序)的唯一性,如果重新安装或清除应用程序数据,我们在beforeSave挂钩中创建了一个代码片段,以便根据android id删除以前的行。
由于某些错误,我们意外删除了数百个安装行。这些行未被重新创建,因为它被视为更新请求而不是创建请求。
我们尝试了几种解决方法
1.将当前安装ID设置为null
2.订阅频道(似乎间歇性地工作)
3.试图取消安装对象
4。尝试使用删除命令删除安装行
请建议从android端或云端重新创建或恢复这些行的最佳可靠方法
答案 0 :(得分:0)
您应该避免从Installation表中删除任何行。每次用户清理安装应用程序时,都会为它们创建一个新行,您只需要将其用户(如果有的话)与该行关联,并忘记安装表中以前的僵尸行。
如果您的任何设备上的当前安装对象现在具有服务器上不存在的关联objectId
,那么恢复丢失的安装行将不会是直截了当的,因此您无法再更新它。您可以访问设备上当前安装对象中的值,构造新的Installation对象,然后使用新的objectId
再次将其保存在Installation表中。然后以某种方式将无效的current
安装对象与您保存的新创建的对象同步。我会说这是非常繁琐但可能会奏效。