关于从本地ObjectBox切换至ObjectBox Sync的技术咨询
ObjectBox 本地存储与 Sync 切换及相关问题解答
问题1:ObjectBox是否支持从本地版直接切换至ObjectBox Sync?
支持。ObjectBox Sync是基于本地数据库的扩展能力,无需重新创建数据库实例。只需在现有本地BoxStore基础上配置Sync参数(如服务器地址、用户认证凭据),启动同步后,本地已有数据会自动与Sync服务器同步,后续读写操作也会同步到云端,实现无缝切换。
问题2:若不支持,能否通过代码创建ObjectBox Sync并手动迁移本地数据?
即便不依赖直接切换的支持,手动迁移也完全可行:
- 初始化一个启用Sync的
BoxStore实例; - 从本地
BoxStore批量查询所有实体数据,插入到Sync-enabled的BoxStore中; - 或利用ObjectBox的导出/导入API(
boxStore.export()和boxStore.import()),将本地数据导出为文件后导入到Sync数据库中。
不过实际场景中直接切换已足够满足需求,手动迁移仅适用于特殊定制场景。
问题3:若两者均不支持,未来是否有相关规划?
这种「本地优先、按需启用同步」的场景是ObjectBox的核心设计目标之一,当前版本已完全支持,无需等待未来规划。官方明确支持开发者让用户先以本地模式使用应用,仅在用户主动注册后启用Sync,既避免强制注册带来的用户流失,也不为单设备用户产生同步服务成本。
问题4:ObjectBox官网显示其Sync支持托管与自托管,是否属实?自托管的定价如何?
属实。ObjectBox Sync提供两种部署方式:
- 托管版(ObjectBox Cloud):由官方提供全托管的Sync服务,无需自行维护服务器;
- 自托管版:允许开发者将Sync服务器部署在自有基础设施上,支持自定义配置。
自托管的定价基于部署规模、并发连接数等因素,需联系ObjectBox官方获取定制化报价。
内容的提问来源于stack exchange,提问作者Phil
相关产品推荐
相关产品推荐

