首页 > 其他分享 >发布上线

发布上线

时间:2024-12-24 09:35:02浏览次数:3  
标签:无需 上线 Skyline 兼容 发布 AB 版本 WebView

发布上线

在考虑要上线发布到正式环境时,我们一般会关注版本覆盖稳定性问题,对于这两个问题,我们提供了完备的解决方案。

版本覆盖

由于 Skyline 是在微信较高版本支持,那么是否低版本就完全运行不了小程序了?答案是否定的。为了保证线上小程序能可靠运行,可任取以下其中一种策略

  1. 提高「基础库最低可用版本」,设置为 Skyline 所支持的版本,该策略意味着放弃低版本用户。
  2. 兼容好 WebView,我们会在不支持 Skyline 的版本自动降级为 WebView 渲染

由于 Skyline 所支持的 CSS 子集是遵循 Web 标准的,因此在样式方面切到 WebView 渲染也能正确渲染,此外对于 Skyline 新增的特性,与小程序其它新增的接口类似,低版本需做好兼容,但我们在部分特性针对 WebView 做了兼容处理,具体参考以下表格:

特性 WebView 兼容性 低版本兼容性
worklet 动画 已兼容 需自行做好兼容
手势系统 相当于空节点 需自行做好兼容
自定义路由 无需兼容(无动效) 无需兼容(无动效)
共享元素 无需兼容(无动效) 无需兼容(无动效)
scroll-view 按需渲染 无需兼容(无优化) 无需兼容(无优化)
scroll-view 新增属性和事件 不兼容 需自行做好兼容
grid-view 已兼容 需自行做好兼容
sticky-section/header 不兼容(可手动加上 position: sticky 兼容) 不兼容(可手动加上 position: sticky 兼容)

稳定性

一般而言,代码变更后需要上线发布时,为了保证线上的稳定性,我们都会选择灰度发布,对于新增 Skyline 相关代码的情况也不例外,因此我们提供了完备的灰度方案。

  1. 通过 We 分析 AB 实验进行灰度。

Skyline 默认是需要经过 We 分析的 AB 实验的,也就是小程序新版本发布后,默认还是以 WebView 运行,需要在 We 分析的 AB 实验的「小程序基础库实验」逐步放量。需要特别留意的是,当 AB 实验的流量分配到 100% 时,并不代表是全量,而是 Skyline 和 WebView 各 50%,若要全量的话,需要先结束实验再选择全量某一个实验组。

  1. 通过小程序版本管理中的发布灰度。

若小程序已经过充分测试,无需再进行 AB 实验的话,我们也提供了以下配置项,可在 app.json 或 page.json 配置上,使 Skyline 不经 AB 实验而默认打开。一般来说,sdkVersioniosVersion+androidVersion 选其一填写即可。

"rendererOptions": {
  "skyline": {
    "disableABTest": true,
    "sdkVersionBegin": "3.0.1", // 基础库最低版本
    "sdkVersionEnd": "15.255.255", // 填最大值,否则之后的新版本会不生效
  }
}
"rendererOptions": {
  "skyline": {
    "disableABTest": true,
    "iosVersionBegin": "x.y.z", // iOS 微信最低版本
    "iosVersionEnd": "15.255.255", // 填最大值,否则之后的新版本会不生效
    "androidVersionBegin": "x.y.z", // 安卓微信最低版本
    "androidVersionEnd": "15.255.255" // 填最大值,否则之后的新版本会不生效
  }
}

标签:无需,上线,Skyline,兼容,发布,AB,版本,WebView
From: https://www.cnblogs.com/AtlasLapetos/p/18623801

相关文章

  • 新纪天工 开物焕彩:重大科技成就发布会参会感
    新纪天工开物焕彩:重大科技成就发布会参会感作为一名技术爱好者,我有幸参加了重大科技成就发布会。这是一场充满热情与希望的科技盛宴,也是一幅展现中国开源技术力量的生动画卷。从人工智能到芯片,从开源软件到开源硬件,每一个环节都让我深刻感受到中国科技自立自强的磅礴力量......
  • 全栈开发中的技术选型决策:快速上线与扩展的平衡
    文章目录摘要引言技术选型的重要性技术选型的关键考虑点项目需求团队技能技术生态性能与扩展性成本与复杂性基于SpringBoot和Vue.js的全栈架构后端代码:SpringBoot示例代码详解:运行原理:前端代码:Vue.js示例代码详解:运行原理:完整运行逻辑改进扩展QA环节为什么......
  • 实践项目-Ansible+Playbook自动化部署服务器上线
    (241223)环境系统ip主机名域名debian12.8192.168.100.6ansible-mainansible-main.example.comdebian12.8192.168.100.12ansible-node1ansible-node1.example.comdebian12.8192.168.100.15ansible-node2ansible-node2.example.comdebian12.8192.168.......
  • rust项目构建发布
    要将构建后的Rust程序移植并运行在其他机器上1.构建静态二进制文件首先,默认情况下,Rust构建的程序会依赖一些共享库,这可能会导致在不同环境中的兼容性问题。为了将程序移植到其他机器上,您可以选择静态编译。静态编译会将所有依赖的库链接到最终的可执行文件中,这样即使目标机......
  • 中电金信参编的《金融分布式系统 术语》等5项团体标准正式发布
    近日,由北京金融科技产业联盟归口的《金融分布式系统术语》《金融分布式系统参考架构》《金融分布式系统应用设计原则》《金融分布式系统技术平台能力要求》和《金融分布式系统运维能力要求》5项团体标准正式发布和实施。 该5项标准由中国金融电子化集团有限公司和国内相关......
  • 开源轻量级IM框架MobileIMSDK的鸿蒙NEXT客户端库已发布
    一、基本介绍MobileIMSDK-鸿蒙端是一套基于鸿蒙Next(纯血鸿蒙)系统的IM即时通讯客户端库:1)超轻量级(编译后库文件仅50KB)、无任何第3方库依赖(开箱即用);2)纯ArkTS编写、无Native代码、高度提炼、简单易用;3)基于鸿蒙Next标准WebSocket API,简洁优雅;4)可运行于任何支持鸿蒙Next的平台......
  • INFINI Labs 产品更新 | Console/Gateway/Agent 等产品开源发布首个版本
    INFINILabs产品又更新啦~,包括Easysearchv1.9.0、Gateway、Console、Agent、Loadgenv1.27.0。本次各产品更新了很多亮点功能,如Easysearch优化了多版本兼容配置;Console/Gateway/Agent/Loadgen及Framework开源后,发布首个重大更新版本,支持过期元数据删除,指标图表懒加载,指标......
  • 第七章:应用部署发布管理
    应用部署发布管理一、系统架构设计1.部署整体架构说明部署应用采用分层架构设计,主要分为四个层次:用户层Web控制台:提供图形化操作界面,支持应用管理、部署配置等功能CLI工具:命令行工具,支持脚本化操作和自动化集成API接口:提供标准RESTAPI,支持第三方系统集成接入层AP......
  • 如何高效调整网站新闻发布时间以提升搜索引擎排名
    在网站运营过程中,新闻时间的准确性和及时性对于用户体验和搜索引擎优化(SEO)都至关重要。正确地修改新闻时间不仅可以确保信息的时效性,还能帮助网站在搜索引擎中获得更好的排名。以下是修改网站新闻时间的具体步骤和注意事项:确定需求与目标在修改新闻时间之前,首先明确修改的目......
  • 基于Spring Boot的新闻发布管理系统
    一、系统架构与技术栈后端:采用SpringBoot框架,负责处理业务逻辑和数据交互。SpringBoot以其简洁、快速和易于集成的特性,成为构建此类系统的理想选择。它提供了大量的自动配置和插件化支持,使得开发者能够专注于业务逻辑的实现,而无需花费过多精力在繁琐的配置和整合上。前......