JDFlutter 白皮书

第一章 产品概述

JDFlutter 平台是京东实现跨平台软件开发的主要方案之一,是实现一套代码多端运行的解决方案,可以简单、快速、低成本、低风险的开发出高性能的不同平台软件。涵盖桌面开发工具、后台管理服务、Web 端组件市场,和以 JDFlutter 容器为输出规范的各种 Flutter 插件,以完整的开发流程和实际的使用场景为基础,提供各种解决方案,JDFlutter 平台适用于各种企业级用户,让开发人员只专注 Flutter 就可以开发出 Android 和 iOS 等多平台软件,对不同系统的软件开发工作实现代码的统一,构建高性能跨平台软件,打造跨平台生态具有重要意义。

第二章 产品优势

2.1 简单快捷

完善的基础组件实现了简单集成,快速使用的开发流程,一套代码,多端输出,大大节省开发成本。

2.2 低成本低风险

开发人员只需要专注于 Flutter 平台,依托 JDFlutter 平台,无需投入多端研发人员,即可完成多端软件的开发工作。同时平台提供升级、降级、埋点、网络、图片、异常统计等服务,大大降低软件的风险。

2.3 高性能高效率

JDFlutter 平台提供全面的服务、工具和插件等配套设施,更是大大减少了学习成本,初步入门 Flutter,即可实现 Android、iOS 移动端原生应用复杂的功能开发。依托于 Flutter 的实现机制,调试过程的热重载功能,大大提升调试效率,缩短等待周期。正式发布后的编译产物运行起来与原生无异,甚至性能还要优于原生应用。

第三章 应用场景

3.1 统一接口规范

JDFlutter 平台致力于为开发者提供一个容器化、动态化、平台化的共享 Flutter 开放平台,统一接入标准、API 接口、使用流程以及开发流程等等。让开发者面向容器开发,使用相同标准的 API 接口使用容器提供的基础功能,进而提升开发效率。

3.2 提供完整服务

JDFlutter 平台还包括自己的 Pub 仓库和桌面开发工具,为开发者提供 Flutter 项目的开发、打包、上线、热更新、降级等等多种服务。

3.3 解决疑难问题

JDFlutter 平台也为开发者们提供了几个重要的解决方案,比如更有没的混合开发解决方案、共享引擎解放内存、Flutter 组件生态市场、Android 和 iOS 的动态化解决方案等等。

第四章 总体设计

image-20200522182930279

4.1 产品架构

JDFlutter开发全流程支持

4.2 技术架构

架构图

4.3 部署架构

JDFlutter 平台包含后台管理、组件市场、桌面工具、组件容器、业务模块等几大类,最终服务于客户端 App,如下图所示:

image-20200518210718980

第五章 产品功能

5.1 专业项目管理

通过 JDFlutter工具创建和管理 Flutter 项目,支持将 Plugin 和 Package 类型的 Flutter 项目发布到 Pub 组件市场,支持将 Module 类型的 Flutter 项目的一键打包和一键发布。

5.2 权限控制

支持 Flutter 项目的权限设置和成员管理,对不方便公开的组件可选择不可见或使用申请授权等操作,支持添加共同开发和管理人员。

5.3 容器化架构接口

通过 JDFlutter 容器定义各组件的对外 API 接口,指定标准化 API,使用者只需关注容器的 API,无需关心功能具体由什么组件实现,达到组件可更换,API 统一等目的。

5.4 Flutter2web降级容灾

支持埋点统计、异常上报等功能,实时掌控线上应用的各种状态,及时响应线上异常。

5.5 动态化更新灰度发布

支持为 Flutter App 和 Module 项目设置热更新和降级配置,灵活修复线上 Bug,以及新增功能等。

第六章 部署环境要求

6.1 JDFlutter 工具

6.1.1 硬件要求

6.1.2 软件要求

运行环境:macOS

开发框架:Flutter v1.12.13

发布组件:京东 Pub 工具

6.2 JDFlutter 容器

6.2.1 硬件要求

6.2.2 软件要求

运行环境:Android API 14+ / iOS

开发框架:Flutter v1.12.13

results matching ""

    No results matching ""