写点什么

Dropbox 通过数据存储 API 支持结构化数据

  • 2013-07-17
  • 本文字数:991 字

    阅读完需:约 3 分钟

Dropbox 发布了数据存储 API , 提供了访问键值的功能, 并支持在使用 Dropbox 用户的设备之间进行同步和自动解决冲突。
数据存储 API 允许应用在用户的 Dropbox 帐户中保存结构化数据,并内置支持在各种不同的设备间进行同步和自动解决冲突。该 API 支持离线活动,能在网络断开重新连接后进行更新。
数据存储以表格的方式保存,其中包含了由 ID 和字段集合组成的记录。每一个字段有名称和值。支持的类型有:

  • 字符串
  • 布尔型
  • 64 位带符号整型
  • IEEE 双精度浮点型
  • 支持 POSIX 毫秒时间戳的日期类型
  • 字节类型。支持如图片或压缩数据的二进制数据。由于每条记录的大小限制为 100KB, 可以通过 Sync API 访问 Dropbox 的文件以存储更大量的数据。该字段包括对文件的引用。
  • List 列表类型。列表支持上述提及的类型。它不能包含其他列表。列表支持基本的操作:put、move、insert 和 delete。

数据存储不包括 schema,能允许记录有不同数量的字段,但建议“所有在表中的记录都有相同的字段以便查询。”多表和数据存储可以根据开发者需要去创建。

一个应用如果不使用用户的存储配额则被限制为 5MB 的存储空间。如果超过大小限制,则开始使用用户的 Dropbox 配额,如果达到限制值则应用不能运行。
下面是一个 Android 的例子,说明如何开启默认的数据存贮、创建新的表格、插入一条有两个字段 taskname 和 completed 的记录,然后使用 Dropbox 同步到内存数据库中。

复制代码
DbxDatastore store = DbxDatastore.openDefault(mAccount);
DbxTable tasksTbl = store.getTable("tasks");
DbxRecord firstTask = tasksTbl.insert().set("taskname",
"Buy milk").set("completed", false);
store.sync();

当一个同步操作发生的时候注册的监听器将会收到通知并按需处理。这就是数据存储如何在设备中运作的原理。

Dropbox 为 Android、iOS 和 Javascript 提供了 SDK 。尽管 API 还处于 beta 阶段,

Dropbox 期望“在接下来数周 API 会推出稳定版本”。

Dropbox 提供对 iOS for Xamarin 的同步组件的支持,能支持使用C#访问数据存储。

由Xamarin 创建的一个范例视频说明了如何在不同的设备间快速同步数据的。

查看英文原文: Dropbox Now Can Hold Structured Data with Datastore API


感谢崔康对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-07-17 07:411776
用户头像

发布了 81 篇内容, 共 26.8 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

猜数字游戏

掘金安东尼

算法 10月月更

技术分享 | app自动化测试(Android)-- Capability 使用进阶

霍格沃兹测试开发学社

三方库移植之NAPI开发[1]—Hello OpenHarmony NAPI

离北况归

OpenHarmony

技术分享 | app自动化测试(Android)--显式等待机制

霍格沃兹测试开发学社

Java中方法的定义和调用

共饮一杯无

Java 后端 10月月更

记录第二天-Vue起步

默默的成长

前端 Vue 3 10月月更

一个值得深思的话题:Wi-Fi 7的诞生会不会取代 5G 网络?

wljslmz

5G 无线技术 10月月更 WiFi7

使用 Zpan 搭建低成本个人私有网盘,还不限速

华为云开发者联盟

云计算 华为云 网盘 企业号十月 PK 榜

Java基础(三)| switch、循环及Random详解

timerring

Java random Switch 循环 10月月更

技术分享 | app自动化测试(Android)-- 属性获取与断言

霍格沃兹测试开发学社

【LeetCode】最长公共前缀Java题解

Albert

LeetCode 10月月更

搜索中常见数据结构与算法探究(二)

京东科技开发者

数据结构 算法 时间复杂度 KMP 算法与数据结构

十问分布式数据库:技术趋势、选型及标准思考

OceanBase 数据库

6步搭建一个飞机大战游戏

华为云开发者联盟

云计算 软件开发 华为云 企业号十月PK榜

测试人生 | 疫情之下工资翻了2倍多,这4个月学习比工作8年学到的还多

霍格沃兹测试开发学社

Qt | 视图便捷类的使用 QListWidget QTreeWidget QTableWidget

YOLO.

qt 10月月更 C++

Vue基础-插值表达式-数据驱动视图-指令系统

默默的成长

前端 Vue 3 10月月更

VUE 初学者基础知识

默默的成长

Vue 前端 10月月更

技术分享 | app自动化测试(Android)-- 参数化用例

霍格沃兹测试开发学社

啃论文俱乐部——移植speexdsp到OpenHarmony标准系统⑥

离北况归

OpenHarmony

EasyCV DataHub 提供多领域视觉数据集下载,助力模型生产

阿里云大数据AI技术

深度学习 开源 模型 计算机上视觉

技术分享 | app自动化测试(Android)-- 特殊控件 Toast 识别

霍格沃兹测试开发学社

StampedLock:一个并发编程中非常重要的票据锁

华为云开发者联盟

高并发 开发 华为云 企业号十月PK榜

十大 CI/CD 安全风险(三)

SEAL安全

DevOps CI/CD DevSecOps 软件供应链安全

启科量子开源量子编程框架 QuTrunk

启科量子开发者官方号

人工智能 开发工具 量子计算 量子技术 启科量子

Wave-2 802.11ac SoC for Routers, Gateways and Access Points//IPQ4019,IPQ4029,Wallys

wallys-wifi6

IPQ4019 ipq4029

2022Q3消费级AR眼镜市场季度分析:国产品牌纷纷发力,市场全面启航

易观分析

科技 AR眼镜 季度报告

干货 | 接口自动化测试分层设计与实践总结

霍格沃兹测试开发学社

Qt | 便捷类中使用拖放功能 Drag

YOLO.

qt 10月月更 C++

Java中流程控制语句

共饮一杯无

Java 流程控制 10月月更

笔记本电脑内卷之争:华硕4+4无忧保脱颖而出

极客天地

Dropbox通过数据存储API支持结构化数据_JavaScript_Abel Avram_InfoQ精选文章