-
Notifications
You must be signed in to change notification settings - Fork 27
Home
Jang Rush edited this page Aug 1, 2019
·
21 revisions
LeanCloud Java SDK 包含 LeanCloud 平台全部功能的客户端接口,适用于 Java 和 Android 两个平台。
SDK 中所有 API 接口与 LeanCloud 云端交互严格遵循 LeanCloud REST API 规范,并且全部采用了 RxJava 风格来设计。
了解如下背景知识,会帮助你更好地理解本 SDK:
与 老版本 SDK相比,该版本 SDK 主要的改进点有:
老版本 SDK 因为历史原因,Android 平台和纯 Java 平台(在云引擎中使用)是两套完全分开的代码,接口不统一,维护也比较困难。新的 SDK 则对此进行了修改,使用一套代码来适配多个平台。 例如:
- 对于 Java 开发者来说,只需要依赖
<dependency>
<groupId>cn.leancloud</groupId>
<artifactId>storage-core</artifactId>
<version>{currentVersion}</version>
</dependency>
- 对于 Android 开发者来说,只需要依赖
implementation ("cn.leancloud:storage-android:{currentVersion}") {
exclude group: 'com.alibaba', module: 'fastjson'
exclude group: 'org.ligboy.retrofit2', module: 'converter-fastjson'
}
implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'
implementation 'com.alibaba:fastjson:1.1.70.android'
implementation "org.ligboy.retrofit2:converter-fastjson-android:2.1.0"
{currentVersion}
指当前最新版本,可以从maven central repository查询获得。storage-android
会自动依赖至storage-core
老版本 SDK 所有的网络请求都是通过 Callback 方式实现的,在有多次前后依赖的请求时会导致代码嵌套层级过多,影响阅读,同时在 Java 开发环境下这种异步的方式也不友好。故而新版本 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<>() {
});
}
请看下一章:Get Started