导语
Flutter 框架是当下移动客户端开发最热门的解决方案,除了可以跨 Android、iOS、web 三端之外, 还能跨越第四端吗? 答案是肯定的,跨越的第四端就是云端。下面云开发团队基于 Flutter 框架的云端一体化探索。
云端一体化的理念
云端一体化,主要是打通客户端与云端资源(云函数、对象存储、文档型数据库等)的链路,让开发者可以在客户端上直接调用云资源,而无需构建应用后端服务,让应用开发变得更简单。
云开发 Flutter 插件
云开发(CloudBase)是云端一体化的后端云服务 ,采用 serverless 架构,免去了移动应用构建中繁琐的服务器搭建和运维。同时云开发提供的静态托管、命令行工具 (CLI) 、Flutter SDK 等能力极大的降低了应用开发的门槛。使用云开发可以快速构建完整的小程序/小游戏、H5、Web、移动 App 等应用。
目前云开发团队和微信小程序合作,对小程序的云端一体化进行了深入的探索和实践,已经建立了完善的云上基础设施——小程序·云开发。
基于这些基础设施,云开发团队再次推出 Flutter 插件,让移动开发者在 Flutter 框架上也可以用上这些能力:
Plugin | Version | 描述 |
---|---|---|
cloudbase_core | 核心库,初始化环境等 | |
cloudbase_auth | 鉴权库,支持微信登录、自定义登录、匿名登录等 | |
cloudbase_function | 支持云函数能力 | |
cloudbase_storage | 支持对象存储能力 | |
cloudbase_database | 支持文档型数据库能力 |
使用场景
重型应用内的运营活动页
运营活动页的需求繁琐,并且上线时间紧急,而且不好估计访问量。借助云开发,可以大大缩短开发周期,且云函数自动扩容,减轻运维成本。
快速迭代新应用
利用云开发高效开发的能力,快速迭代新应用。
基于小程序扩展 APP
已经基于云开发搭建了成熟的小程序应用,希望扩展相同功能的 APP,可以直接复用同一套云开发资源,快速搭建 APP。
搭建跨端应用中台
借助云开发支持多端(小程序、WEB、APP)的能力,搭建跨端应用中台,提高开发效率。
快速开始
- 拥有一个腾讯云账号,并创建云开发环境。
- 在 Flutter 工程中引入云开发插件。
dependencies:
cloudbase_core: ^0.0.2
cloudbase_auth: ^0.0.2
cloudbase_function: ^0.0.1
- 编写代码调用云上资源
import 'package:cloudbase_auth/cloudbase_core.dart';
import 'package:cloudbase_core/cloudbase_auth.dart';
import 'package:cloudbase_function/cloudbase_function.dart';
// 初始化环境
CloudBaseCore core = CloudBaseCore.init({
// 填写你的云开发 env
'env': 'your-env-id'
});
// 匿名登录
CloudBaseAuth auth = CloudBaseAuth(core);
await auth.signInAnonymously();
// 调用云函数
CloudBaseFunction cloudbase = CloudBaseFunction(core);
Map<String, dynamic> data = {'a': 1, 'b': 2};
CloudBaseResponse res = await cloudbase.callFunction('sum', data);
print(res.data) // { sum: 3 }
后续规划
- 支持 Dart 云函数,让 Flutter 开发者体验更极致的云端一体化。
- 更多配套的基础设施(云函数调试工具、CLI 管理工具等)。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。