分类目录归档:更新日志

2015 年 10 月 LeanCloud 产品更新汇总

要点简述如下:

  • 发布 PHP SDK 0.1.0,支持数据存储功能。
  • 重新开放了索引服务,支持自助创建唯一索引。
  • iOS SDK 解决了数据存储的 DNS 污染问题。
  • Android IM SDK 修复了一个引起超时的 bug,请开发者们尽快升级。
  • 云引擎支持 beforeUpdate。

更详细的描述如下。

继续阅读

云引擎 1.0 运行环境下线通知

我们计划于 2015 年 12 月 1 日零时 ,将版本较低的云引擎 1.0 运行环境下线。届时所有使用云引擎 1.0 运行环境的应用在请求云引擎时将收到错误响应,所有云引擎相关的 hook 函数将不可用,这可能会影响到其他服务(如存储、实时通信)。因此,请使用 1.0 版本的用户提前做好测试,尽快按下面的说明完成升级,以免给最终用户带来影响。

我们最新的云引擎版本为 3.0,于 2015 年 5 月推出,其主要特性是「去沙箱」和「支持 Python 运行时」。没有沙箱环境使得在云引擎上可以运行标准的 Node.js 项目,支持任意的 Web 框架,项目开发调试会更加灵活。这些都使得 3.0 在性能和功能上较其前任们有很大的提升, 因此我们推荐用户升级到最新的 3.0 版本。

由于技术跨度较大,我们不支持从 1.0 直接升级到 3.0,所以 1.0 需要先升级到 2.0 后再升级到 3.0。

下线时间

2015 年 12 月 1 日 0:00

继续阅读

2015 年 9 月 LeanCloud 更新汇总

LeanCloud 向大家送上迟到的中秋祝福,祝各位开发者身体健康、阖家幸福!

下面汇报一下我们在 9 月份所做出的产品改进。

网站和文档

首先,我们对「财务账单」做出了很大改进——交易历史菜单按照消费类型分类,发票申请的流程得以简化,界面也做了调整和改进。

其次,我们对应用设置菜单做了如下改进:

  • 在应用 Key 菜单引入「重设 master key」功能
    当发现 master key 意外泄露时,你可以主动将其重置。 请注意,重置将立即使旧 master key 失效,如果使用了云引擎,你需要做一次部署来强制更新 master key
  • 新增应用选项「只允许使用旧密码来修改用户密码」
    启用后,将只允许通过 updatePassword 接口使用老密码来修改应用内用户密码。
  • 新增应用选项「启用文件 SSL 域名」
    启用后,本应用上传的文件 _File 数据将使用新的 SSL 域名,特别针对 iOS 9 优化。

继续阅读

2015 年 5 — 8 月份 LeanCloud 更新汇总

有段时间没有向大家汇报我们的工作进展,最近两个月我们花费了较多的工作时间在处理故障后续改进。稳定性是我们的生命线,近期我们也选择放慢了新功能的开发节奏,而尽可能保证服务的稳定性。这次的更新汇总能让大家了解下 LeanCloud 在 5 至 8 月份都做了什么。因为间隔时间比较长,因此在这里仅列举一些重要的改进和更新。

继续阅读

2015 年 4 月份 LeanCloud 更新汇总

许久没有向大家汇报 LeanCloud 近段时间的工作,这里罗列下我们这一个半月来所做的事情。

网站

  • 协作者权限细分到二级菜单,例如统计分析细分到应用趋势、行为分析、终端分析等二级菜单。
  • 列属性增加两种: 只读仅限当前用户读写 。其中 仅限当前用户读写 只对用户表有效。
  • 改进了 Class 权限和 ACL 编辑功能,Class 权限增加了 仅限登录用户 的快捷设置。
  • 单行记录展示优化,点击对象的 objectId 可以看到格式化后的完整对象信息。
  • class 的应用内搜索设置增加强制重建索引的按钮。
  • 发布了 控制台使用说明文档 ,推荐开发者详细阅读,了解控制台提供的众多功能。
  • 修复部分 Bug: Relation 列查询个数错误,API 统计日期显示错误等,感谢用户的积极反馈。

存储服务

  • 查询结果的 ACL 过滤实现前置过滤,不会再出现因为 ACL 导致查询结果不符合 limit 限定的缺陷。
  • 创建对象也将尊重 SDK 的 fetchWhenSave 设置,返回创建后的对象,而不仅仅是 objectId 等基本信息。
  • 用户反馈组件的推送增加过期时间和 iOS badge 提示。
  • 修复数据导入没有通知文件格式错误给用户的 bug。
  • 开放 API 用于第三方 iOS 证书上传。
  • 修复测试环境 iOS 证书无法下载的 bug。
  • 修复事件流新关注用户的 status 时间乱序问题。
  • 改进短信重设密码安全改进,增加流控和缩短过期时间。
  • 修复列默认值类型检测漏洞。
  • 强制检验 iOS 上传证书类型是否匹配环境类型。
  • 云代码仓库设置支持 SSH 协议

离线数据分析

  • 加速每日 dump 数据转换。
  • 准备开放日志表服务,更便宜,更易于分析。

消息服务

  • 修复开放聊天室更新属性和取历史记录的 bug
  • 增加敏感词库
  • 增加对话相关的云代码 hook,参考 实时通信文档
  • 一些 Bug 修复:未读消息、离线消息等
  • 单独的实时通信 REST API 文档

云代码服务

  • Node 依赖缓存,加快部署速度。
  • 部署日志优化,显示部署步骤等信息,方便用户查看。
  • 修复动态路由和静态路由的优先顺序问题,在使用 avos-expression-cookie-session 中间件可以避免大量无谓的 fetchUser 请求。
  • 修复云代码如果最后一样是注释的情况下编译出错的 Bug
  • 修复 AV.Cloud.httpRequest 提交数据包含中文错误的 Bug。
  • 改进了错误日志收集和展现。
  • 修复极端情况下路由错误 Bug
  • 云代码函数的 response.error 可以传入 AV.Error 对象,或者 {code: xxx, message: 'error message'} 的 JSON 对象,用于自定义错误代码。

iOS SDK v3.0.3

  • AVInstallation 增加 deviceProfile,支持 iOS 多证书推送(网站暂未上线此功能,请留意通知)
  • 实时通信的 ClientId 支持最多 64 个字符
  • 修复大文件上传取消不成功的问题
  • 修复通过短信验证码登录后 mobilePhoneVerified 仍然为 NO 的问题
  • 修复部分消息解析时崩溃的问题
  • 更多详情参考 下载页面的更新历史

Android SDK v3.1.5

  • 修正 AVIMConversation 获取 Attribute 时遇到 NPE 的问题
  • 修正实时聊天在多用户登录时出现 conversation 缓存冲突的 bug
  • 修正 SNS 模块 SSO 授权之后 SNSBase.authorizedData() 返回 null 的异常
  • 增加了 AVUser.friendshipQuery 接口,让用户可以一次性同时获取粉丝和关注列表
  • 增加 AVIMClient.getOnlineClients 接口来实现在线客户端查询功能
  • 更多详情参考 下载页面的更新历史

Python SDK v1.0.8

  • 支持 Python 2.6

JavaScript SDK v0.5.1

JavaScript Realtime SDK v2.0.6

  • 提供兼容 IE8+ 低版本浏览器的插件方式
  • 开放 secure 选项,用户可以手动关闭 SSL 协议
  • 修复 2.0.1 发布以来的一些 Bug,详情参考 changelog

其他

  • 发布了 LeanCloud 新的统计客户端,请从 这里 下载
  • 重构了文档结构,以功能为核心来组织文档,希望能帮助大家更好地阅读和查找文档。

2015 年 2 月下旬到 3 月上旬 LeanCloud 更新总结

年过完了,大伙都回来上班了。这里跟大家汇报下,年前和年后这四周,我们都做了哪些事儿。

主要变更

闲话不提,先说说开发者们可能比较关心的改动。

首先,我们拆分了短信购买和账户余额。现在,短信额度可以在「财务」菜单里单独购买,购买后的额度将不会从每月的账单中扣除,从而避免了先前每月账单扣除可能导致短信余额不足的问题。我们会提供一段过渡时间让用户来购买短信额度,因此建议使用短信服务的用户尽快采取行动。另外,在余额用完之前,系统会通过短信和邮件向用户发送通知,所以强烈建议用户在开发者账户信息中填写手机号码,以接收我们的提醒短信。

其次,我们正式对外发布了 JavaScript Push SDK。借助它,开发者可以在网页上接收和推送消息,轻松实现弹幕和在线客服之类的应用。源码开放在 leancloud/js-push-sdk 上,开发指南文档在 这里 。我们还改进了 JavaScript SDK 的 AV.Promise 实现,兼容标准,增加了 donecatchAV.Promise.race 等方法,并补充了文档说明。

最后,我们合并了文档项目,不再区分内部和外部项目,并开放了文档生成程序。我们还发布了 Awesome LeanCloud 网站,供大家查看和提交 LeanCloud 开源生态周边的工具或软件。

网站和文档

网站方面我们做了非常多的细节改进,可能大家未必能注意到。例如:API 统计专门增加了从云代码平台发起的调用统计、应用选项勾选会提示保存成功、改了 API 在线测试工具 以支持 keys 和 include 查询等等。许多小的调整,希望能让大家在使用管理功能时感觉更容易,更方便。

网站的其他改动:

  • 在应用设置里,增加了「转让应用」功能。
  • 创建应用时,可以选择拷贝一个来源应用的数据 Schema。
  • API 统计里,加了饼状图展现,可以根据平台、Class 或者操作类型做对比展示。
  • 拆分短信购买,可以通过支付宝或账户余额购买短信,短信额度不会从每月账单里扣除。

(API 饼状图分析)
Snip20150313_3

最重要的是,我们合并了内外部文档项目,不再区分内部文档和外部文档项目,统一为 LeanCloud/docs,并且开放了文档生成代码。我们还对文档做了大量的优化。我们的新同事已开始对各个 SDK 的开发指南做深入的 Review 和优化,希望能带给大家更好的阅读和使用体验。同时也特别欢迎大家去 fork 我们的项目,并提出改进意见。

最后,我们的工程师还发布了一个名为 Awesome LeanCloud 的聚合网站。在这里你可以看到由社区维护的 LeanCloud 开源生态周边:多语言 SDK、最佳实践库、UI 组件、云代码模块等等。我们欢迎更多的开发者们来提交象多语言 SDK、最佳实践库、UI 组件、云代码模块等类库。

API 服务

  • 短信模板的上限调整为 10 个。
  • 增加 /date API 返回服务器时间。
  • 修复匿名用户转换正式用户相关问题。匿名用户将在两种情况下转换为正式用户:提供用户名和密码注册或者更新、链接到一个第三方登录账号。
  • 改进了应用内搜索:不需要填写组件配置就可以使用应用内搜索,支持 include 查询,增加重建索引 API。
  • 查询的 keys 参数支持反向选择,加上减号的字段将不在查询结果里返回,例如 keys=-name,-age 则查询结果不返回 nameage 字段。
  • 改进了 /push 接口的错误提示,当推送涉及 iOS 设备且没有上传证书或者没有安装 Installation 的时候提早报错。
  • 改进了数据导入,如果出错,在通知邮件里说明详细的错误信息。
  • CQL 做了改进:limit 和 order by 子句可以任意排序,支持 select -name,-age from Player 的过滤选择,不返回 agename
  • 短信签名增加长度校验,要求在 10 个字符内。

消息推送及聊天

  • iOS 推送支持 iOS 8 引入的 titletitle-loc-keytitle-loc-args 等新字段,并更新了文档。
  • 发布了 JavaScript Push SDK,支持网页推送。
  • 实时通信增加了 错误码文档
  • 消息推送增加了 问题排查文档 ,方便自助分析推送问题。
  • 聊天持续增强稳定性和性能。

云代码

  • 彻底解决了 nginx 偶尔 502 的问题。
  • 测试环境和生产环境做了分离。
  • 命令行工具发布 0.6.6 — 0.6.8 版本,详细更新日志请看 这里

iOS SDK v2.6.11

  • 聊天修复 session 关闭后重新打开导致 group.sessionnil 的问题。
  • 添加创建 transient 属性群组的接口,可用作临时聊天室。
  • 用户反馈添加推送答复给用户的功能。
  • 修复匿名用户转换正式用户的相关问题。
  • 修复离线时被邀请入群后接收离线消息的问题。
  • 添加缓存获取失败后请求重试次数限制。

Android SDK v2.7

  • 增加了匿名用户转化为正式用户的处理逻辑。
  • 提高了统计的使用时长的准确性。
  • 修正了社交组件的 WebView 实现在 Android 4.2 以后出现的卡在 WebView 上的问题。
  • 修正了 AVObject.toJSONObject 方法中,遇到 Pointer 时的序列化异常。
  • 聊天 onMessageSent 中获取的 AVMessage 对象补齐 fromPeerId
  • 聊天正确更新 SessionManageronlinePeerIds 的数据。

JavaScript SDK v0.5.0

  • 增强 AV.Promise,增加 donecatchfinallyAV.Promise.race 等方法,兼容 Promise/A+,并更新了开发指南和 API 文档。
  • 修复更新对象可能更新没有变更的属性的 Bug,减少请求流量。
  • 拆分 SDK,按照模块划分成多个文件。
  • 使用 gulp 构建 SDK,清理代码。
  • 修复事件流无法发送带有 AV.FileAV.Object 等类型的 Status。
  • 修复 node.js 环境下上传文件没有扩展名的 Bug。

Unity3D SDK

  • 修复 AVQuery 查询中文字符时的错误。
  • 升级支持 Unity 5.0。

2015 年 2 月上旬更新汇总

在春节来临之间,LeanCloud 祝福所有开发者羊年大吉,阖家幸福。

2 月份到今天为止,我们为 LeanCloud 增加了不少更新,汇总如下。

网站和控制台

  • API 统计增加云代码平台调用统计。
  • 云代码在线编辑增加 AV.Cloud.onLogin 函数,支持在用户登录前执行检查操作。
  • 离线数据分析增加导出和保存为 class 功能,您可以导出查询分析结果,或者将查询结果保存为 Class 数据以供增删改查。
  • 离线数据分析的查询增加耗时提示。

存储和离线分析服务

  • 修复 _Follower_Followee 在取消关注的时候没有触发云代码 afterDelete/beforeDelete 的 Bug
  • 用户反馈组件支持推送消息给用户。
  • 修复删除列没有同时删除索引的 bug
  • 离线分析增加对应用间共享 class 的支持
  • 离线分析支持结果数据导出和另存为 class 功能。

聊天服务

  • 增加获取群组在线人数 REST API。
  • 预告:我们即将推出全新设计的聊天 2.0 SDK,新 SDK 将更易于使用,效率更好,敬请期待。

云代码服务

  • 云代码因为压力和容量问题,上旬遇到了故障,请查看 《02-10~02-11 云代码故障说明》,对此我们表示万分抱歉。
  • 集中精力提升云代码服务的稳定性,特别是部署和运行。
  • 系统针对春节流量的扩容运维等。
  • 云代码命令行工具 发布 0.6.5,增加 onLogin hook 支持、增加 lint 命令、兼容 io.js、修复一些 Bug 等,建议升级。

推送服务

  • 改进 iOS 推送,提高稳定性。
  • _Notification 表针对 iOS 推送消息增加 invalidTokens 字段,表示本次推送遇到的无效设备总数。

Android SDK v2.6.11

  • 改进文件上传策略提高小文件上传进度精度

iOS SDK v2.6.10.2

  • 修复聊天连接断开可能导致崩溃的问题
  • 修复崩溃统计开关无效的问题,添加开关设置完成回调接口
  • 修复一处内存泄露问题