速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

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:411506
用户头像

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

关注

评论

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

纯css爱心代码-最近超级火的打火机与公主裙中的爱心代码(简易版)

肥晨

11月月更 跳动的爱心 代码爱心 爱心代码

全网首次公开!阿里巴巴分布式系统设计核心原理技术内幕

程序员小毕

程序员 架构 面试 分布式 程序人生

uniapp-如何在邀请页面生成海报

格斗家不爱在外太空沉思

vue.js uniapp 11月月更

设计模式之美-面向对象

GalaxyCreater

设计模式

架构实战营模块四

Geek_408c99

【云原生】Nacos-TaskManager 任务管理的使用

石臻臻的杂货铺

云原生 nacos 11月月更

【LeetCode】三角形最小路径和Java题解

Albert

算法 LeetCode 11月月更

随机森林-分类森林

烧灯续昼2002

Python 机器学习 算法 随机森林 11月月更

华为开发者大会HDC2022:HMS Core 持续创新,与开发者共创美好数智生活

HarmonyOS SDK

HMS Core

漏洞扫描的种类

穿过生命散发芬芳

漏洞扫描 11月月更

数据库系统的组成

阿泽🧸

数据库 11月月更

零基础入门网络安全,收藏这篇不迷茫【2022最新】

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

Verilog语法入门

梦笔生花

Verilog 11月月更 组合逻辑电路

一次遍历导致的崩溃

小小怪下士

Java 程序员

Go语言入门14—Channel

良猿

Go golang 后端 11月月更

使用TSDB自动检测时序数据的异常情况

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

如何在论文中画出漂亮的插图?

Jackpop

极客时间架构训练营模块四作业

李晨

架构

【超干货】阿里内部 Spring Boot 笔记,全硬核知识点

程序知音

Java spring 架构 springboot 后端技术

为了面试字节,熬夜肝完这份Redis笔记后,我终于“硬”了一回

小小怪下士

Java redis 程序员 面试

【愚公系列】2022年11月 微信小程序-app.json配置属性

愚公搬代码

11月月更

架构误区系列1:简单依靠扩容解决容量问题

agnostic

架构误区

披荆斩棘成功上岸美团、字节、华为,分享Java面经及答案

程序知音

Java java面试 后端技术 Java面试八股文

华为云从入门到实战 | AI云开发ModelArts入门与WAF应用与部署

TiAmo

华为 华为云 云开发 11月月更

SAP UI5 barcode 控件的 feature 检查探测机制单步调试 - checkCordovaInIframe

汪子熙

JavaScript Fiori SAP UI5 ui5 11月月更

HEM亮相华为HDC2022开发者大会,助力企业数字化办公

最新动态

架构误区系列(Architecture Pitfall)

agnostic

构架师

Vue-VueRouter使用

格斗家不爱在外太空沉思

vue.js VueRouter 11月月更

从0制作一个web端网易云

格斗家不爱在外太空沉思

vue.js axios 11月月更

小白入门:什么是CURD?

wljslmz

数据库 sql crud 11月月更

设计千万级学生管理系统的考试试卷存储方案

小虎

架构训练营

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