Flutter 核心技术与实战
陈航
前美团点评高级技术专家
42432 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 48 讲
Flutter 核心技术与实战
15
15
1.0x
00:00/00:00
登录|注册

42 | 如何构建高效的Flutter App打包发布环境?

思考题:如何选用特定的Flutter SDK版本
iOS代码签名的复杂性
通过Travis CI实现持续交付的关键步骤
持续交付的价值
为Flutter Module工程引入自动发布能力
自动发布构建产物
为项目引入Travis
为项目增加Travis配置文件
配置Travis配置文件
绑定GitHub项目
Travis CI介绍
降低软件开发成本
保证软件可以持续、稳定地保持在随时可以发布的状态
建立自动监测源代码变更的流程链机制
缺乏线上应急策略
需要加班修复临时出现的问题
App在开发测试时没有异常,但打包构建交付时问题频出
总结
使用Travis CI实现持续交付
持续交付的思路
交付过程失败可能原因
如何构建高效的Flutter App打包发布环境?

该思维导图由 AI 生成,仅供参考

你好,我是陈航。今天,我们来聊一聊 Flutter 应用的交付这个话题。
软件项目的交付是一个复杂的过程,任何原因都有可能导致交付过程失败。中小型研发团队经常遇到的一个现象是,App 在开发测试时没有任何异常,但一到最后的打包构建交付时就问题频出。所以,每到新版本发布时,大家不仅要等候打包结果,还经常需要加班修复临时出现的问题。如果没有很好地线上应急策略,即使打包成功,交付完成后还是非常紧张。
可以看到,产品交付不仅是一个令工程师头疼的过程,还是一个高风险动作。其实,失败并不可怕,可怕的是每次失败的原因都不一样。所以,为了保障可靠交付,我们需要关注从源代码到发布的整个流程,提供一种可靠的发布支撑,确保 App 是以一种可重复的、自动化的方式构建出来的。同时,我们还应该将打包过程提前,将构建频率加快,因为这样不仅可以尽早发现问题,修复成本也会更低,并且能更好地保证代码变更能够顺利发布上线。
其实,这正是持续交付的思路。
所谓持续交付,指的是建立一套自动监测源代码变更,并自动实施构建、测试、打包和相关操作的流程链机制,以保证软件可以持续、稳定地保持在随时可以发布的状态。 持续交付可以让软件的构建、测试与发布变得更快、更频繁,更早地暴露问题和风险,降低软件开发的成本。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

本文介绍了如何通过Travis CI为Flutter App引入持续交付能力,以构建高效的打包发布环境。持续交付的思路和Travis CI工具的使用是重点,通过自动监测源代码变更、构建、测试、打包等流程链机制,保证软件持续、稳定地保持可发布状态。文章详细讨论了配置文件的编写和示例代码,以及如何为Flutter工程配置自动化测试能力和构建iOS和Android的任务。此外,还介绍了如何为Flutter Module工程引入自动发布能力。通过这些例子,读者可以了解如何利用持续交付的思路和Travis CI工具来提高交付效率和质量。文章还提到了iOS代码签名的复杂性和相关操作步骤,以及如何选用特定的Flutter SDK版本。总的来说,本文为读者提供了构建高效的Flutter App打包发布环境的实用指南。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Flutter 核心技术与实战》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(4)

  • 最新
  • 精选
  • 大土豆
    规模最大,大家最熟悉的应该是jenkins吧😄

    作者回复: 要搞持续交付,最重要的就是抽象出任务可重复、可独立运行的关键命令行,并组织成执行任务。剩下的无非就是配置命令行任务的运行环境、加工运行产物(这些步骤又可以提炼出命令行),并把代码变更与命令行任务通过钩子关联起来。而至于这些命令行任务的执行容器,到底是使用Travis还是Jenkins,并没有那么重要了。

    2019-10-03
    3
    5
  • Geek_a9f943
    Travis构建的产物能将flutter中的第三方依赖也一起构建出来嘛?

    作者回复: 可以,参考下第44篇分享

    2019-10-08
  • Carlo
    请问现在把flutter用在生产环境最大的问题是什么呢?(没有足够的plugin?比如facebook login)(没有好的crash报告系统?比如crashlytics的崩溃信息基本没什么用)

    作者回复: 1、除非你是硬件属性极强的App,一般没啥问题,正常App所需要的插件Pub上都有。 2、crashlytic上报的不是崩溃信息,是异常信息,这些信息当然有用啊,一般是你的App出现了控件异常,如果堆栈里没有你自己的方法,可以增加当前页面上下文,用二分法排查一下

    2019-10-03
    3
  • bentley
    老师能出个Jenkins的教程吗?
    2021-03-17
    2
收起评论
显示
设置
留言
4
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部