Skip to content
jfeng edited this page Apr 3, 2018 · 21 revisions

LeanCloud Java SDK 包含 LeanCloud 平台全部功能的客户端接口,适用于 Java 和 Android 两个平台。

SDK 中所有 API 接口与 LeanCloud 云端交互严格遵循 LeanCloud REST API 规范,并且全部采用了 RxJava 风格来设计。

Prerequisites

了解如下背景知识,会帮助你更好地理解本 SDK:

Why we need new SDK

老版本 SDK相比,该版本 SDK 主要的改进点有:

Supporting Multiple Platforms in a single Codebase

前述老版本 SDK 因为历史原因,导致 Android 平台和纯 Java 平台(在云引擎中使用)是两套完全分开的代码,接口不统一,维护也比较困难。 例如:

  • 对于 Java 开发者来说,只需要依赖
    <dependency>
      <groupId>cn.leancloud</groupId>
      <artifactId>storage-core</artifactId>
      <version>1.x.y</version>
    </dependency>
  • 对于 Android 开发者来说,只需要依赖
compile "cn.leancloud:android-storage:1.x.y"

android-storage 会自动依赖至 storage-core

Reactive API

前述老版本 SDK 所有的网络请求都是通过 Callback 方式实现的,在有多次前后依赖的请求时会导致代码嵌套层级过多,非常影响阅读。故而新版本 SDK 完全基于 RxJava 来构建,满足函数式编程要求,可以非常方便地支持这种扩展。

例如:

AVObject post = new AVObject("Post");
post.put("content", "LeanCloud 服务不错");
post.saveInBackground().map(new Function<AVObject, AVObject>() {
	  public AVObject apply(AVObject object) throws Exception {
	  	// return something.
	  	return null;
	  };
	}).subscribe(new Action1<>() {
	});
}