一、业务介绍1.1小程序开源总体介绍
百度从做智能小程序的第一天起,就打造了一个真正开源、开放的生态系统。我们的愿景 是的:定义移动时代的最佳体验,构建智能小程序行业标准,打破孤岛,共同构建开源、开放、繁荣的小程序行业生态。百度智能小程序的生态玩家分为三类:联盟伙伴、开发者和用户。针对联盟伙伴,满足伙伴共建生态、流量共享、业务共赢的需求,高效补充伙伴APP缺失的场景,激发用户对伙伴APP的使用时间,并分享小程序的变现收益。对开发者而言,满足了开发者一次性开发、多端运营的需求,让开发者的流量获取更加便捷高效,增加了开发者的业务收入。对用户而言,无需跳出即可满足用户一站式服务的需求。百度搜索是非常重要的小程序分发门户。通过构建统一的小程序行业生态,完善百度搜索生态的用户体验和服务闭环。
百度智能小程序的开源架构如何支撑整个联盟生态的运作?
如图所示,小程序开源联盟整个业务架构分为四层。包括:联盟主机层、外部联盟使能层、中间服务层、基础设施层。
源码来源:https://minglisoft.cn/honghu2/business.html
1.2小程序开源与厂商合作介绍
随着百度小程序开源联盟的不断发展,也吸引了头部手机厂商。小程序开源与厂商共同构建了丰富的业务场景,不仅包括厂商的浏览器场景,还包括桌面锁屏、负一屏、全局搜索等各种场景。在这样多种场景的建设中,我们面临的共同挑战是:如何保证厂商线上分销的质量,如何搭建从厂商浏览器到百度搜索到小程序的全流程分销管控通道,从而实现准确、实时的控制。供应商浏览器的小程序分发。
我们究竟是如何思考和构建它的?下面会详细介绍。
二、整体技术建设思路介绍2.1小程序开源分发保障技术点
1.背景介绍
开源保障的核心对象是主机和小程序,核心目的是保证小程序在主机上的分发质量。
为什么会出现分发质量问题?宿主进入开源后,需要集成开源SDK并开发相关能力。这些过程完成后,主机就获得了相应的主机能力。小程序是基于swanjs开发框架开发的。 swanjs运行时框架底层也依赖开源SDK运行。因此,小程序开发后,小程序本身也获得或依赖相关能力。由于不同的主机支持的能力不同,所以同一个小程序在不同的主机上分发时,可能会遇到某个主机不支持该小程序使用的某项能力,从而导致该小程序在该主机上无法正常打开。或者降级到H5开启,导致用户体验受损。
因此小程序开发,需要有开源的保障方案,提前检测宿主机与小程序的能力不匹配,从而保证系统可以自由控制宿主机上分发小程序的全过程。
2.技术要点
在主机上实现小程序分发通道的搭建,核心涉及到终端流程的开通,能力和分级流程连接,最终的分发流程连接三个主要部分,如图下图:
1)端进程包括宿主端进程打通小程序端进程
一个。主机端进程:
主机入驻开源。结算成功后,宿主需要集成开源SDK和开发。主机开发完成后,即可打包发布主机。应用程序;同时,宿主包需要通过宿主能力测试才能发布。通过下载主机工具,进行CTS能力测试,生成主机能力支持状态。
b.小程序流程:
开发者进行小程序开发,开发完成后,小程序包的版本将在线发布小程序开发,然后小程序的开源安全模块订阅小程序。程序发布动作 小程序制作开发 ,同时拉取小程序包信息进行小程序能力扫描测试,生成小程序能力使用情况。
2)能力和评级流程
在宿主机和小程序分别完成访问和能力扫描后,开源安全系统可以分别根据宿主机和小程序能力的扫描结果进行解析小程序开发,生成并存储最终的宿主机和小程序能力使用情况同时,开源安全系统可以根据主机能力和小程序能力分别对主机和小程序进行排名,计算出主机和小程序当前可以达到的等级,并给主机和小程序打上等级分分别。
3)分发流程
主要由小程序分发端实现,主要根据用户在开源安全系统中配置的分发策略,根据策略计算小程序是否满足宿主机上的分发条件。
3.词汇表
SWANJS:小程序前端运行时框架。
能力:能力是指小程序开源系统中在百度APP或开源SDK中封装和支持的各种API、组件、框架等系统能力的总称。详情请参考小程序开发作者文档了解,目前开源小程序支持的能力超过1000种。
CTS测试:CTS即Compatibility Test Suite,兼容性测试套件;提供了一套兼容性测试 小程序开发 ,保证智能小程序在主机APP中稳定运行。主机APP上线前,必须先通过测试。 CTS 测试。
AST 扫描:抽象语法树(Abstract Syntax Tree)扫描是一种针对applet 应用程序的源代码扫描工具。它通过抽象语法树对小程序的源代码进行扫描和分析。目前支持小程序。能力所用能力、能力属性、能力参数、能力返回值、能力所涉及的关键路径等各个维度的扫描函数。
L级:根据小程序端能力的使用,区分了一些基础能力、特征能力和低频能力。同时,宿主可以根据这些能力标准进行按需实现。等级划分如下:
p>
L1:小程序自带,无需宿主额外配合(框架实现)。
L2:建议完成能力,保证基础体验,内部矩阵必须实现(包括必要的能力包括手的独特能力)。
L3:特色能力,强依赖能力,宿主按需实现。
L4:低频能力,不追求满足,主机按需实现。
2.2 主机能力检测机制
1.使用主机工具进行 CTS 能力测试
p>
主机集成开源SDK并完成开发后打包。可以在开源宿主平台下载宿主工具,测试包体的CTS能力。 ,CTS支持主机进行全容量自动测试和补充测试。补充测试可以对满容量测试失败的能力进行批量测试,测试完成后上传自动测试报告。还有一些能力无法实现CTS自动测试,需要进行手动测试。测试完成后,主机将手动测试报告上传至手机。
2.宿主工具上传测试报告
主机完成自动测试和手动测试后,需要分别上传自动测试报告和手动测试报告到开源安全系统。同时,由于同一个主机版本可能会多次重复测试过程,会产生多个测试报告。因此,主机需要分别选择最终的自动测试报告和手动测试报告,以便开源保障系统解析最终确认的报告。 .
3.报告解析和输出主机能力
开源系统收到主机确认报告的操作后,开始进行报告解析,计算主机能力支持,输出最终的主机能力列表存储;主机能力等级也会在主机能力产生的同时进行,计算并标注主机能力等级;输出主机能力和主机等级将在后续主机分发策略中使用的小程序时分发。
能力测试服务可用性保证:
用户完成测试报告确认动作后,开源保障系统实时进行报告解析和能力解析相关操作,在一个流程中完成。如果由于系统执行异常导致主机能力检测失败,开源安全系统设计了重试任务,以确保所有主机都能完成能力检测。
2.3 小程序能力检测机制:
发现、改变
探知、求新
共享,感恩一路相伴
昱远品牌形象已完成全面升级
点击访问新官网