Android SDK 发布 4.7.7 版本,完全兼容 Android P

相信很多朋友都非常关注谷歌新推出来的 Android Pie 系统,在这一版本中谷歌加入了很多新的功能和 API,但是对我们开发者影响最大的可能是其完全取消了 Apache HTTP 的支持。

虽然这是一个早在 Android 6.0 即引入的变更(详见这里:取消支持 Apache HTTP 客户端),但彼时我们还是可以通过在 build.gradle 中增加如下声明而得以继续使用它:

android {
    useLibrary 'org.apache.http.legacy'
}

而从 Android P 开始,Apache HTTP 客户端变得完全不可用,依赖于它的应用在 Android 9 或更高版本上将启动失败并显示 NoClassDefFoundError 错误。

为了应对这一变化,我们在 10 月底升级了 Android SDK 至 4.7.7 版本,彻底去掉了 Apache HTTP 的使用,完全兼容 Android P 系统,请大家及时升级。

同时,再次提醒一下,我们的 Java Unified SDK 自项目初始就不依赖 Apache HTTP,所以也是天然支持 Android P 的,并且以后老的 Android SDK 会进入只修问题不加功能的维护状态(至 2019 年 9 月停止维护),LeanCloud Android 团队会把精力投入到 Java Unified SDK 的开发之中,请大家尽早切换使用。

2018 年 11 月 02 日华北节点内网核心设备升级通知

接到华北节点的底层服务商通知,2018 年 11 月 02 日(周五)凌晨服务商将对机房内网的核心设备进行升级维护。为了保证对外服务稳定,我们会提前将流量切换至其他线路,但是切换过程可能出现网络抖动,造成各项服务的网络请求出现短暂失败。

【升级时间】
2018-11-02 00:00 – 07:00(北京时间)

【影响范围】
华北节点的应用

【影响描述】
网络切换时有可能出现短暂的请求失败,但会很快自动恢复。

我们运维团队会密切关注升级过程,期间若服务出现不可用状况,我们会通过邮件或短信及时与开发者沟通进展。如果有任何疑问,请发邮件至 support@leancloud.rocks 进行咨询。

系统维护通知:LeanCloud 美国节点计划于 10 月 29 日对机房进行升级改造

随着客户量的增长,LeanCloud 美国节点的数据存储规模和并发请求压力越来越大,原本使用 IaaS 服务商提供的虚拟机越来越成为系统瓶颈,所以我们计划对底层物理架构进行一次升级,尽量采用高性能物理机来承载核心服务,以便提供更好的处理性能与稳定性。

本次升级是机房整体迁移,无可避免会导致一段时间内服务不可用,但我们会尽量降低对您业务的实际影响。经过详细评估和预演,我们估计本次迁移操作大概需要 5 小时,其中有 2 小时左右系统完全不可访问,3 小时左右系统会被锁定在只读状态(读取操作不受影响,写入和修改请求会返回失败)。

我们将迁移的时间初步定在 北京时间 10 月 29 日 13:00 – 18:00,也就是 美国东部时间 10 月 29 日 0:00 – 5:00,如果这一时间段对您业务影响非常大,请提前致信 support@leancloud.rocks 与我们联系。迁移当天我们的紧急联系电话 (+86 186-2503-8918)也会一直保持畅通,有任何问题您都可以及时联系我们。

衷心感谢您一直以来对我们的理解和支持,LeanCloud 会努力为大家提供最好的技术服务。

系统维护通知:华东节点计划于 10 月 25 日凌晨对存储集群进行升级维护

为了提升系统性能和修复已知问题, 我们计划于 10 月 25 日凌晨 01:00 – 06:00(北京时间 GMT+08)对中国区华东节点的存储集群进行升级维护 。此次操作预计耗时 5 小时,期间不会引起任何服务中断,对已有应用的数据 API 访问,以及终端用户使用都不会造成影响。

但是在系统维护期间,应用控制台与存储相关的部分管理功能会被暂时禁用,因此开发者将无法创建和删除应用,无法创建、编辑、删除和绑定 Class,但对已有应用和数据进行增删改查不受影响。在维护开始和结束的时候,我们会在华东节点的应用控制台发布操作提醒,如果您在控制台没有看到系统维护提醒,则可能您的应用不在华东节点,或者我们对目标应用已经完成上述操作。

我们会尽快完成升级维护工作并恢复应用控制台的受限操作。如果遇到计划之外的情况,维护时间可能会延长,我们会通过邮件或短信及时与您沟通进展。

如果有任何疑问,请发邮件至 support@leancloud.rocks 进行咨询。

LeanCloud 推出 10x 程序员专用笔记本

在过去十多年里,苹果笔记本逐步从非主流的产品成为了程序员的标配,但是苹果从 2016 年开始使用的新键盘实在让大家失望,而其他厂商的笔记本中又难以找到在各方面能与 MacBook Pro* 抗衡的产品。在强大的需求驱动下,我们决定自己来解决这个问题。

我们最初把目标定为打造一款最适合程序员用的笔记本,但是经过一些早期的调研,发现这个群体太大,需求过于多样,还是把目标限定为资深程序员(也就是在硅谷喜欢说的 10x 程序员)这个更加垂直的群体比较好。这个产品需要满足以下条件:

  • 手感要好
  • 长时间使用不伤眼
  • 轻薄便于携带
  • 突破电池技术瓶颈实现超长持续使用时间
  • 价格低廉

在一个产品上同时达到这些条件的追求使得我们必须从 first principles 出发从全新的角度审视这个问题。

Jeff Atwood 说「最好的代码是没有的代码」,因为不存在的代码就不需要维护。在和多位成功的资深程序员的访谈中我们发现,其实他们大部分时候只要画画流程图,具体细节让初级程序员和实习生去实现就好了,所以键盘对他们来说其实是个伪需求。最好的键盘就是没有键盘。

为了满足高效地画流程图的需求,我们决定支持用笔的操作,并兼容几乎所有采用有机溶剂的第三方配件,在我们的测试中大部分笔在操作 10x 程序员笔记本时灵敏度比 Apple Pencil* 高一个数量级**。在显示技术方面,我们使用了比 Retina Display 分辨率高两倍、使用自然光反射技术的界面,有效视角接近 180 度(超过所有 LCD、LED 显示器),并且长时间使用眼睛也不会疲劳。

使用传统技术的笔记本厂商不得不在电池容量/使用时长和便携性之间做痛苦的权衡,然而最好的电池是没有电池,使用时长最长的笔记本是不耗电的笔记本。得益于可以反射自然光的显示材料,我们的笔记本真正实现了零功耗,所以做到了无需充电永久使用。

在小批量内测的过程中我们还发现了一个重要的隐藏需求。资深程序员即使实际很少使用 vim、sed、awk 等工具,也要对相关知识非常熟悉,这样与用 Visual Studio Code*** 的初级程序员相比才能树立优越感和区分度。所以我们的笔记本里包含了 10 种 10x 程序员常用工具的快速参考。

10x 程序员笔记本重新定义了 10x 程序员。

点击购买你的第一个 10x 程序员笔记本

* Apple、MacBook Pro 和 Apple Pencil 是 Apple Inc. 在美国和其他国家或地区注册的商标
** 在实验室条件下得到的结,实际使用中可能有偏差
*** Visual Studio 是 Microsoft 在美国和其他国家或地区注册的商标

2018 国庆节 LeanCloud 放假通知

  • 29
  • 30
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

LeanCloud 将于 2018 年 10 月 1-7 日按照国家法规放假七天,10 月 8 日周一恢复正常工作。放假期间运维团队仍将在线值班,以应对可能的突发情况,保障服务稳定。

放假期间 LeanCloud 工程师会部分时间在线,处理紧急事件和回复工单。购买了技术支持的用户仍可以通过工单系统来提交问题,我们会尽快回复,但无法保证在一天之内完全解决。若有遗漏我们会在节后第一时间进行处理,希望大家体谅。

如若发生紧急情况,请联系值班人员电话 186-2503-8918,我们会及时响应处理。

2018 中秋节 LeanCloud 放假通知

  • 22
  • 23
  • 24

LeanCloud 将于 2018 年 9 月 24 日按照国家法规放假一天。放假期间运维团队仍将在线值班,以应对可能的突发情况,保障服务稳定。

放假期间 LeanCloud 工程师会部分时间在线,处理紧急事件和回复工单。购买了技术支持的用户仍可以通过工单系统来提交问题,我们会尽快回复,但无法保证在一天之内完全解决。若有遗漏我们会在节后第一时间进行处理,希望大家体谅。

如若发生紧急情况,请联系值班人员电话 131-4644-6722,我们会及时响应处理。

Java Unified SDK 开放测试通知

9 月伊始,我们新推出了一个 Java 平台的统一 SDK(Java Unified SDK)。该 SDK 可以在 Java、Android 和 LeanCloud 云引擎三种环境下运行,支持数据存储、LiveQuery、即时通讯、云函数、推送和混合推送等全部核心功能,并且和老版本一样开放所有源代码(代码见这里)。今后 LeanCloud 安卓开发团队会以开发维护 Java Unified SDK 为主,老版本 Android SDK 则会进入维护状态,并将于 2019 年 9 月底停止维护。在此期间我们主要做 bugfix,不再增加新功能,因此建议大家尽快迁移到 Java Unified SDK 上来。

为什么我们要新推一个 SDK

一份代码,支持多个平台
老版本 SDK 因为历史原因,Android 平台和纯 Java 平台(在云引擎中使用)是两套完全分开的代码,功能有差异,接口不统一,维护比较困难。新的 SDK 则对此进行了修改,使用一套代码来适配多个平台,给开发者带来完全一致的使用体验。

Reactive API
老版本 SDK 所有的网络请求都是通过 Callback 方式实现的,在实现多轮前后衔接的业务逻辑时会导致代码嵌套层级过多,影响阅读,同时在 Java 开发环境下这种异步的方式也不太友好。故而新版本 SDK 的存储接口完全基于 RxJava 来构建。函数式编程风格的 API,给业务开发带来更多便利。
例如,我们在发表一篇博文(Post)的时候,需要同步增加一些 Comment,在新的 SDK 中则可以这样来实现:

AVObject post = new AVObject("Post");
post.put("title", "LeanCloud 发布了新版 Java 统一 SDK");
post.put("content", "9 月初,LeanCloud 发布了新版 Java 统一 SDK,欢迎大家试用!");
post.saveInBackground().map(new Function<AVObject, AVObject>() {
  public AVObject apply(AVObject p) throws Exception {
    // 在 Post 保存成功之后,再新建一个 Comment 对象.
    AVObject comment = new AVObject("Comment");
    comment.put("content", "好想试一下");
    comment.put("post", p);
    return comment.saveInBackground().blockingFirst();
  };
}).subscribe(new Observer<AVObject>() {
  @Override
  public void onSubscribe(Disposable disposable) {
  }

  @Override
  public void onNext(AVObject comment) {
    System.out.print("post and comment objects have been saved successfully.");
  }

  @Override
  public void onError(Throwable throwable) {
    System.out.print("Saving post or comment objects failed. cause: " + throwable.getMessage());
  }

  @Override
  public void onComplete() {
  }
});

如何使用新版 SDK

新版 SDK 现在处于开放测试阶段,其最新版本为 5.0.0-SNAPSHOT,我们已经编译发布到了 LeanCloud 的 maven 仓库中。大家可以通过 Maven 和 Gradle 等包依赖管理工具来下载使用,具体可以参考这里的 wiki 说明

大家发现 Bug 或者有任何疑问或建议,请使用 GitHub Issue 来告知我们,我们会及时跟进解决,非常感谢大家的反馈。

LeanCloud 官网改版,产品介绍与使用方案全面更新

8 月 21 日,新版 LeanCloud 官网正式上线。在此次改版中我们翻新了所有产品与服务的介绍,调整了开发版、商用版和企业版的结构与描述,希望以此能够帮助现有及潜在用户更清楚地了解 LeanCloud 各类产品的实用性及以上三种使用方案之间的差异性。另外,各项服务的价格并没有变化,所以不会导致使用成本增加。

区分核心服务与扩展服务

文件存储、短信、云引擎、云缓存这些服务都统一按照实际使用量收费,并不会因使用方案不同而产生价格或功能上的差异,因此我们将它们从核心服务中抽取出来放入扩展服务。这样的区分也让整个使用方案体系看起来更加简化易懂。

需要说明的是,文件存储和短信服务是我们与第三方服务商合作的产品,将其纳入 LeanCloud 产品体系的初衷是为了尽可能地满足开发者的实际需要。由于此类服务商无法实时提供服务消费清单,与我们结算费用存在一至三天不等的滞后期,所以会出现这样一种情况,即一个已被暂停、没有了网络流量的 LeanCloud 应用仍有可能在后续几日被补扣这些延迟的费用。这是开发者们常有的疑问。

移动统计纳入核心服务

移动统计是我们自主开发的产品。它会针对不同的使用方案提供不同的资源和能力配备。例如,对于开发版应用来说,统计服务的事件上报接口的调用次数会与存储服务的 API 调用次数累加在一起,受到每天调用上限三万次的限制;对于商用版应用来说,事件上报次数既没有限制,也不会与存储服务的 API 调用次数累加在一起,这样也就不会增加商用版存储服务的成本。

统计结果在云端的有效保存时间为六个月。如果不想使用移动统计,请登录应用控制台,进入 分析 > 统计设置,关闭 启用 SDK 统计功能

如果您对此有任何疑问或反馈,请通过 support@leancloud.rocks 联系我们。

云引擎开始支持 .NET Core

.NET Core 在经历了几年的发展之后,非常理智地挣脱了 Windows 原生平台的束缚,充分拥抱开源,而我们的云引擎产品也补充了对 .NET Core 运行时的支持。用户现在可以轻松地部署和托管一个 .NET Core 的项目,例如一个 ASP.NET Core 的网站。

下载示例项目:

git clone https://github.com/leancloud/aspnetcore-getting-started.git

然后进入源码目录:

cd aspnetcore-getting-started/

执行如下命令绑定一个应用:

lean switch

注:此处可能会要求登录,按照命令行工具提示成功绑定一个应用即可。

最后部署到云端:

lean deploy

打开设定的二级域名就可以预览一个 ASP.NET Core 的示例网站了。

更多文档和开发指南点击:.NET 网站托管开发指南