导语

Flutter 框架是当下移动客户端开发最热门的解决方案,除了可以跨 Android、iOS、web 三端之外, 还能跨越第四端吗? 答案是肯定的,跨越的第四端就是云端。下面云开发团队基于 Flutter 框架的云端一体化探索。

云端一体化的理念

云端一体化,主要是打通客户端与云端资源(云函数、对象存储、文档型数据库等)的链路,让开发者可以在客户端上直接调用云资源,而无需构建应用后端服务,让应用开发变得更简单。

image

云开发 Flutter 插件

云开发(CloudBase)是云端一体化的后端云服务 ,采用 serverless 架构,免去了移动应用构建中繁琐的服务器搭建和运维。同时云开发提供的静态托管、命令行工具 (CLI) 、Flutter SDK 等能力极大的降低了应用开发的门槛。使用云开发可以快速构建完整的小程序/小游戏、H5、Web、移动 App 等应用。

目前云开发团队和微信小程序合作,对小程序的云端一体化进行了深入的探索和实践,已经建立了完善的云上基础设施——小程序·云开发。

基于这些基础设施,云开发团队再次推出 Flutter 插件,让移动开发者在 Flutter 框架上也可以用上这些能力:

Plugin Version 描述
cloudbase_core pub package 核心库,初始化环境等
cloudbase_auth pub package 鉴权库,支持微信登录、自定义登录、匿名登录等
cloudbase_function pub package 支持云函数能力
cloudbase_storage pub package 支持对象存储能力
cloudbase_database pub package 支持文档型数据库能力

使用场景

重型应用内的运营活动页

运营活动页的需求繁琐,并且上线时间紧急,而且不好估计访问量。借助云开发,可以大大缩短开发周期,且云函数自动扩容,减轻运维成本。

快速迭代新应用
利用云开发高效开发的能力,快速迭代新应用。

基于小程序扩展 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 管理工具等)。

文档链接:
https://cloud.tencent.com/doc...


CloudBase云开发
425 声望438 粉丝

云开发(Tencent CloudBase,TCB)是云端一体化的后端云服务 ,采用 serverless 架构,免去了移动应用构建中繁琐的服务器搭建和运维。同时云开发提供的静态托管、命令行工具(CLI)、Flutter SDK 等能力极大的降...