bmob安卓的开发文档

Bmob是一款国内的后端云服务,其提供了丰富的 SDK、 RESTful API 接口以及一系列的云函数托管服务,尤其适合中小型企业或个人开发者快速构建移动应用后端服务。下面,本文将从原理和详细介绍两个方面来介绍 Bmob 的安卓开发文档。

一、Bmob 的原理

Bmob 的原理就是通过云服务将用户的数据存储于云端,并提供相应的 API 接口让客户端进行调用,达到快速构建后台服务的目的。Bmob 提供了丰富的云服务,其中最常用的是数据存储服务。

1. 数据存储服务

Bmob 数据存储服务的数据结构全部由后台自动生成,Android 客户端可以直接使用提供的 SDK 与 Bmob 后台进行数据的增、删、改、查。Bmob 后台表现的就像是一个数据库,我们可以创建多个表存储不同的数据。

2. 用户服务

Bmob 用户服务将用户的登录、注册、重置密码等功能都封装好了,可以方便的集成到应用中,并且支持第三方平台的登录,比如微信、QQ、微博等,方便开发者集成。

3. 文件存储服务

Bmob 文件存储服务可以为开发者存储 app 相关的所有文件,包括用户头像、用户上传的文件等。

4. 云函数

Bmob 云函数可以让开发者编写一段 JavaScript 代码上传到后端,后端执行代码并返回结果给客户端。比如可以在前端写一段监听事件,比如计算一个数据值,再将这段计算代码上传到 Bmob 后端执行,避免了频繁请求,增加了前端性能。

二、Bmob 的详细介绍

接下来,为了让大家更好的理解 Bmob 的使用方法,我们将从如何在 Android 项目中初始化 Bmob SDK、如何使用数据存储、用户服务、上传文件、调用云函数等四方面进行详细介绍。

1. 初始化 Bmob SDK

在项目中引入 Bmob SDK 之前,需要准备一下数据:

- Bmob 应用 ID: 在 Bmob 后台创建应用后返回的应用 ID,在此处填入即可进行初始化。

- 云函数调用服务 URL: 在 Bmob 后台云函数部署完成后,提供的 URL,在此处填入即可进行云函数的调用。

Bmob SDK 的初始化有两种方式,一种是全局初始化,另外一种是单独初始化。首先我们来看全局初始化的方式,在 Application 中添加以下代码:

```

public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); Bmob.initialize(this, "Your Bmob App ID"); } }

```

单独初始化,Bmob SDK 的单独初始化在每个类中初始化,比如初始化用户服务时,则需要在每个需要用到用户服务的 Activity 中都进行一次单独初始化。具体如下:

```

BmobUser bmobUser = new BmobUser();

bmobUser.setUsername("username");

bmobUser.setPassword("password");

bmobUser.login(new SaveListener() { @Override public void done(BmobUser bmobUser, BmobException e) { if (e == null) { // 登录成功 } else { // 登录失败 } } });

```

2. 数据存储

Bmob 提供了丰富的 API 接口,其中包括存储数据、根据条件查询数据、数据修改和数据删除等。以下是数据库新增和查询操作的例子:

```

// 新增数据 Person person = new Person();

person.setName("Bmob");

person.setAge(3);

person.setSex("男");

person.save(new SaveListener() { @Override public void done(String objectId,BmobException e) { if(e==null){ // 添加成功 }else{ // 添加失败 } } });

// 根据条件查询数据 BmobQuery bmobQuery = new BmobQuery<>();

bmobQuery.addWhereEqualTo("name","Bmob");

bmobQuery.findObjects(new FindListener() { @Override public void done(List list, BmobException e) { if(e==null){ // 查询成功 }else{ // 查询失败 } } });

```

3. 用户服务

Bmob 用户服务包括用户登录、用户注册、用户退出登录、用户重置密码、第三方登录等。以下是登录注册和退出登录的例子:

```

// 用户登录操作 BmobUser bmobUser = new BmobUser();

bmobUser.setUsername("username");

bmobUser.setPassword("password");

bmobUser.login(new SaveListener() { @Override public void done(BmobUser bmobUser, BmobException e) { if (e == null) { // 登录成功 } else { // 登录失败 } } });

// 用户注册操作 BmobUser bmobUser = new BmobUser();

bmobUser.setUsername("username");

bmobUser.setPassword("password");

bmobUser.signUp(new SaveListener() { @Override public void done(BmobUser bmobUser, ...) }

// 用户退出登录操作 BmobUser.logOut();

```

4. 文件存储

Bmob 文件存储服务可以处理从设备上传文件到云端,从云端下载文件到设备,文件的删除和信息的获取四个操作。以下是上传和下载文件的例子:

// 上传文件操作 BmobFile bmobFile = new BmobFile(newFile("test.png"));

bmobFile.uploadblock(new UploadFileListener() { @Override public void done(BmobException e) { if (e == null) { // 上传成功 返回 URL } else { // 上传失败 } } });

// 下载文件操作 BmobFile bmobFile = new BmobFile("test.png", "", "File URL"); bmobFile.download(new DownloadFileListener() { @Override public void onStart() { } @Override public void done(String savePath, BmobException e) { if (e == null) { // 下载成功 } else { // 下载失败 } } });

5. 云函数

Bmob 的云函数基于 JavaScript 编写,可以用来实现客户端不能或难以实现或者带来性能问题的操作。以下是一个云函数的例子:

```

Bmob.functions("calculateScore").execute(new FunctionCallback() { @Override public void done(Integer result, BmobException e) { if (e == null) { // 云函数调用成功 } else { // 云函数调用失败 } } });

```

到此,我们已经对 Bmob 的安卓开发文档有了详细了解。总之,Bmob 的使用非常简单,让开发人员可以在后端与前端的开发过程中大大降低服务开发难度,开发者可以把更多的关注放到实现业务功能上,而无需过多关注服务端的技术实现。

川公网安备 51019002001728号