Flutter 热修复(Shorebird)

Shorebird:https://docs.shorebird.dev/

我们都知道安卓原生开发,热修复已经不是什么难题。阿里云,腾讯云已经都有现成的SDK可以接入。

然而Flutter开发还一直没有类似热修复的开发库,无意中看到了Shorebird这个平台,接下来就开始学习一波。

一.准备工作

1.安装Shorebird

Window系统

打开 PowerShell 终端并运行:

Set-ExecutionPolicy RemoteSigned -scope CurrentUser # Needed to execute remote scripts
iwr -UseBasicParsing 'https://raw.githubusercontent.com/shorebirdtech/install/main/install.ps1'|iex

在这里插入图片描述安装完成后验证一下:

打开普通终端运行命令:shorebird doctor

在这里插入图片描述

苹果系统运行命令如下:

curl --proto '=https' --tlsv1.2 https://raw.githubusercontent.com/shorebirdtech/install/main/install.sh -sSf | bash

2.登录

执行以下命令:

shorebird login

登录验证的时候,会让你选择使用哪个浏览器进行验证,Google和Microsoft。

由于Google账号验证有问题,所以选择的是Microsoft验证。
在这里插入图片描述

二.项目构建

1.初始化

要将现有 Flutter 项目配置为使用 Shorebird,请shorebird init 在 Flutter 项目的根目录下使用:

shorebird init

在这里插入图片描述

2.初始化包

项目开始打包:

shorebird release android

打包完默认生成的是aab格式的包

在这里插入图片描述
也可以改成apk的形式

shorebird release android --artifact apk

也可以指定发布的flutter版本

shorebird release android --flutter-version 3.19.0

在这里插入图片描述
以上就把包初始化完成了,这个算是第一个基础包(注意:这个包必须要安装,不然后续没法热更新),后边热修复会进行打差分包。

3.补丁包

上边打的包安装后,可以修改代码,打补丁包

shorebird patch android

在这里插入图片描述

理论上执行完命令后,补丁就已经发布了。重新打开app就可以看到更新了。

三.控制台

用Microsoft浏览器打开:https://console.shorebird.dev/

在这里可以看到构建的版本,和打过的补丁包。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/560035.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【电子通识】焊接的原理、技巧与注意事项

在【电子通识】烙铁使用方法 中我们讲到烙铁是硬件工程师最经常使用的工具之一,一把性能保持良好的烙铁能帮助我们快速进行电路调试。并且提供了一些与烙铁有关的周边知识、保养和使用注意事项等。 本文章是基于有技巧 !小姐姐带你玩焊接!进行…

短视频素材哪里去找?推荐几个视频素材免费下载的网站

高质量的资源,会让你的视频创作更加生动和具有吸引力。下面我为你介绍世界各地的优质无水印视频素材网站,以拓宽你的创作视野,帮助你在这个视觉革命的时代中脱颖而出。 1. 蛙学府(中国) 提供各种类别的优质高清视频素…

音视频封装格式解析(1)——H264格式简析,I/P/B帧是什么?H264压缩原理

文章目录 1. H264编码参数2. H264编码原理2.1 压缩原理2.2 编码结构解析 3. NALU结构4. H264 annexb模式5. 补充说明5.1 I帧5.2 P帧5.3 B帧 1. H264编码参数 视频质量和⽹络带宽占⽤是相⽭盾的。通常情况下,视频流占⽤的带宽越⾼则视频质量也越⾼,需要的…

继电器工作原理、主要选型参数及应用电路详解

继电器具有输入回路和输出回路,通常应用于自动控制电路中。继电器实际上是用较小的电流去控制较大电流的一种“自动开关”。 工作原理 继电器的工作原理基于电磁效应。电磁式继电器一般由铁芯、线圈、衔铁、触点簧片等组成。当线圈两端加上一定的电压时,…

CSS基础:盒子模型详解

你好,我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃,大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端工具”,可获取 We…

基于Kubernetes集群构建MongoDB

基于Kubernetes集群构建MongoDB 作者:行癫(盗版必究) 一:基础环境 1.Kubernetes集群正常运行 2.Harbor私有仓库正常运行 二:MongoDB项目部署 ​ MongoDB项目对应Kubernetes的yaml文件: --- apiVersion: v1 kind: Namespace metadata:name: m

揭开ChatGPT面纱(一):准备工作(搭建开发环境运行OpenAI Demo)

文章目录 序言:探索人工智能的新篇章一、搭建开发环境二、编写并运行demo1.代码2.解析3.执行结果 本博客的gitlab仓库:地址,本博客对应01文件夹。 序言:探索人工智能的新篇章 随着人工智能技术的飞速发展,ChatGPT作为…

ruoyi element-ui 实现拖拉调整图片顺序

ruoyi element-ui 实现拖拉调整图片顺序 安装sortablejs https://sortablejs.com/npm 安装sortablejs npm install sortablejs --save相关options var sortable new Sortable(el, {group: "name", // or { name: "...", pull: [true, false, clone, …

【大模型系列】大模型评价指标总结

文章目录 1 图生文 (Image-to-Text)1.1 BLEU:基于准确率,得分越高越好1.2 METEOR:基于准确率和召回率,得分越高越好1.3 ROUGE:得分越高越好1.4 CIDEr:得分越高越好1.5 SPICE:得分越高越好1.6 Hu…

【云计算】云数据中心网络(五):对等连接

《云网络》系列,共包含以下文章: 云网络是未来的网络基础设施云网络产品体系概述云数据中心网络(一):VPC云数据中心网络(二):弹性公网 IP云数据中心网络(三)…

OpenHarmony网络通信-socket-io

简介 socket.io是一个在客户端和服务器之间实现低延迟、双向和基于事件的通信的库。建立在 WebSocket 协议之上,并提供额外的保证,例如回退到 HTTP 长轮询或自动重新连接。 效果展示 下载安装 ohpm install ohos/socketio OpenHarmony ohpm 环境配置等更…

原始部落版本潮玩宇宙小程序定制大逃杀游戏APP开发H5游戏

原始部落版本潮玩宇宙小程序定制大逃杀游戏APP开发H5游戏 潮玩宇宙小程序定制大逃杀游戏APP开发H5游戏 潮玩宇宙大逃杀小游戏模块成品源码,可嵌入任何平台系统,增加用户粘性,消除泡沫,短视频直播引流。 玩家选择一间房间躲避杀手…

Vue3+Spring Boot3实现跨域通信解决办法

Vue3Spring Boot3实现跨域通信解决办法 1 跨域是什么?2 何为同源呢?3 解决办法3.1 全局配置3.1.1 实现CorsFilter过滤器3.1.2 实现SpringMVC配置类3.1.3 创建CorsFilterFactory工厂类返回CorsFilter对象 3.2 局部跨域3.2.1 注解配置3.2.2 手动设置响应头(局部跨域)…

Python | Leetcode Python题解之第37题解数独

题目: 题解: class Solution:def solveSudoku(self, board: List[List[str]]) -> None:def dfs(pos: int):nonlocal validif pos len(spaces):valid Truereturni, j spaces[pos]for digit in range(9):if line[i][digit] column[j][digit] bloc…

类和对象【二】this指针,构造函数和成员初始化列表【超详细】

文章目录 this指针this指针的定义this指针的“工作”原理this指针的作用this指针的特点 构造函数构造函数的定义构造函数的作用构造函数的特点构造函数的调用方式括号法无参构造或者全缺省构造需要传参才能调用的构造函数 隐式类型转换法是只传一个参数就能调用的构造函数是要传…

发泡机液压站比例阀放大器

发泡机液压站是提供动力和压力以驱动发泡机工作的系统。 发泡机是一种用于制备聚氨酯发泡材料的设备,而液压站则扮演着为发泡机提供必要动力的角色。具体来看,液压站的主要组成包括: 液压油箱:存储液压油,为系统提供液…

11.接口自动化测试-Allure报告(2)

目录 1.如何同时执行多个测试文件2.Allure的不同层级应用Allure报告: 1.如何同时执行多个测试文件 (1)新建bat文件 (2)写命令 cd ./testCase pytest -s --alluredir ./report --clean-alluredir allure serve ./repo…

Unity之圆环slider

一、参考文章 Unity_圆环滑动条(圆形、弧形滑动条)_unity弧形滑动条-CSDN博客 此滑动条拖动超过360后继续往前滑动值会从0开始,正常我们超过360度时不可在滑动。 二、 超过360度不可滑动问题解决 参考HTML文章制作: https://www.c…

Java后端-文件上传大小限制解决

spring版本 2.5.4 报错如下:The field multipartFile exceeds its maximum permitted size of 1048576 bytes. 我上传的文件大小为2.5MB,如下图 原因:springboot默认的上传单个文件大小为1MB,而一次请求最大为10MB。 解决方案…

DFS专题:电话号码的字母组合

DFS专题:电话号码的字母组合 题目链接: 17.电话号码的字母组合 参考题解: 代码随想录 题目描述 代码思路 将数字到字母的映射用字符串数组表示出来。然后利用回溯算法,解决n个for循环的问题,枚举出每一种符合要求的情况。 代…