CloudBase Flutter SDK 是腾讯云云开发(Tencent Cloud Base)多端 SDK 中的一员,主要支持 Flutter 框架下使用云开发能力。CloudBase 提供 Serverless 云端一体化服务,使用 CloudBase,可以快速构建小程序、移动App、网页等应用。
CloudBase Flutter SDK 提供一系列插件,可以根据场景按需加载。
Plugin | Version | 文档 | 描述 |
---|---|---|---|
cloudbase_core | CloudBase Core | 核心库,初始化环境等 | |
cloudbase_auth | CloudBase Auth | 鉴权库,支持微信登录、自定义登录、匿名登录等 | |
cloudbase_function | CloudBase Function | 支持云函数能力 | |
cloudbase_database | CloudBase Database | 支持文档型数据库能力 | |
cloudbase_storage | CloudBase Storage | 支持对象存储能力 |
在 腾讯云云开发控制台 创建环境(已有环境可跳过)。
在用户管理页面中,点击“登录设置”,然后启用匿名登录:
新建云函数 sum
。
在 sum
云函数中添加代码。
"use strict";
exports.main = (event, context, callback) => {
callback(null, event.a + event.b);
};
$ flutter create cloudbase_demo
$ cd cloudbase_demo
在项目的 pubspec.yaml
文件中添加 dependencies
。
dependencies:
cloudbase_core: ^0.0.2
cloudbase_auth: ^0.0.2
cloudbase_functions: ^0.0.1
从 pub
安装依赖。
$ flutter pub get
在项目的 lib/main.dart
文件中进行匿名登录,并调用运用 sum
云函数。
import 'package:cloudbase_auth/cloudbase_core.dart';
import 'package:cloudbase_core/cloudbase_autj.dart';
import 'package:cloudbase_function/cloudbase_function.dart';
// 初始化 CloudBase
CloudBaseCore core = CloudBaseCore.init({
// 填写你的云开发 env
'env': 'your-env-id'
});
// 获取登录状态
CloudBaseAuthState authState = await auth.getAuthState();
// 唤起匿名登录
if (authState == null) {
await auth.signInAnonymously().catchError((err) {
// 处理匿名登录错误
print(e);
});
}
// 调用云函数
CloudBaseFunction func = CloudBaseFunction(core);
Map<String, dynamic> data = {'a': 1, 'b': 2};
CloudBaseResponse res = await func.callFunction('sum', data);
// 打印云函数结果
print(res);