用于检测小程序能力特征的方法和装置制造方法及图纸

技术编号:28736881 阅读:12 留言:0更新日期:2021-06-06 11:45
本公开公开了用于检测小程序能力特征的方法、装置、存储介质、设备、软件产品,涉及移动终端设备领域,尤其涉及小程序领域。具体实现方案为:获取小程序包,其中,小程序包中包括代码;基于能力特征集合对应的关键词集合,对小程序包内的代码进行查找;根据查找到的关键词确定出静态能力特征列表;对静态能力特征列表中的每个静态能力特征进行分级;将级别高于预定阈值的静态能力特征确定为运行态能力特征,得到运行态能力特征列表。该实施方式能够快速、准确地提取小程序的能力特征。准确地提取小程序的能力特征。准确地提取小程序的能力特征。

【技术实现步骤摘要】
用于检测小程序能力特征的方法和装置


[0001]本公开涉及移动终端设备
,尤其涉及小程序


技术介绍

[0002]小程序宿主在接入小程序框架时,由于一些人为或底层技术原因,经常无法完整接入整个小程序框架,这会导致小程序宿主实际支持小程序底层能力不完整。而原先小程序下发依据,是基于完整的小程序框架支持能力基础上进行,对于底层能力支持不完整的宿主,原先的下发策略就会不准确,此时就需要了解各小程序实际使用的能力,即拿到小程序能力特征画像,从而判断小程序是否可以下发。
[0003]小程序开发者,在进行小程序业务的多次迭代后,业务会越来越复杂,通常有一些性能问题是由于小程序使用框架底层API造成的。当开发者需要知道小程序依赖底层能力时,需要人工查看所有的历史代码,比较耗费人力,此时需要一种扫描工具,可以快速分析出小程序使用的底层依赖能力,帮助开发者进行小程序性能优化。

技术实现思路

[0004]本公开提供了一种用于检测小程序能力特征的方法、装置、设备以及存储介质。
[0005]根据本公开的第一方面,提供了一种用于检测小程序能力特征的方法,包括:获取小程序包,其中,小程序包中包括代码;基于能力特征集合对应的关键词集合,对小程序包内的代码进行查找;根据查找到的关键词确定出静态能力特征列表;对静态能力特征列表中的每个静态能力特征进行分级;将级别高于预定阈值的静态能力特征确定为运行态能力特征,得到运行态能力特征列表。
[0006]根据本公开的第二方面,提供了一种用于检测小程序能力特征的装置,包括:获取单元,被配置成获取小程序包,其中,小程序包中包括代码;匹配单元,被配置成基于能力特征集合对应的关键词集合,对小程序包内的代码进行查找;第一确定单元,被配置成根据查找到的关键词确定出静态能力特征列表;分级单元,被配置成对静态能力特征列表中的每个静态能力特征进行分级;第二确定单元,被配置成将级别高于预定阈值的静态能力特征确定为运行态能力特征,得到运行态能力特征列表。
[0007]根据本公开的第三方面,提供了一种用于检测小程序能力特征的电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行第一方面中任一项的方法。
[0008]根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行根据第一方面中任一项的方法。
[0009]根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现根据第一方面中任一项的方法。
[0010]本申请的实施例,通过扫描代码的方法确定出小程序的静态能力特征,再对静态
能力特征进行分级,确定出可以运行的静态能力特征作为运行态能力特征。从而可以快速分析出小程序使用的底层依赖能力,帮助开发者进行小程序性能优化,还可以帮助宿主控制小程序的下发,避免下发的小程序无法正常使用。
[0011]应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
[0012]附图用于更好地理解本方案,不构成对本公开的限定。其中:
[0013]图1是本公开的一个实施例可以应用于其中的示例性系统架构图;
[0014]图2是根据本公开的用于检测小程序能力特征的方法的一个实施例的流程图;
[0015]图3a、3b是根据本公开的用于检测小程序能力特征的方法的一个应用场景的示意图;
[0016]图4是根据本公开的用于检测小程序能力特征的方法的又一个实施例的流程图;
[0017]图5a、5b是是根据本公开的用于检测小程序能力特征的方法的又一个应用场景的示意图;
[0018]图6是根据本公开的用于检测小程序能力特征的装置的一个实施例的结构示意图;
[0019]图7是用来实现本公开实施例的用于检测小程序能力特征的方法的电子设备的框图。
具体实施方式
[0020]以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
[0021]图1示出了可以应用本公开的用于检测小程序能力特征的方法或用于检测小程序能力特征的装置的实施例的示例性系统架构100。
[0022]如图1所示,系统架构100可以包括开发端101、服务器102、用户端103,网络平台104。开发端101、服务器102、用户端103,网络平台104之间可通过有线网络或无线网络通信,在此不做限定。
[0023]开发人员使用开发端开发小程序,需要从服务器获取小程序框架。小程序是一种不需要下载安装即可使用的应用,可以运行在不同的应用环境(即宿主)中,比如网页浏览器应用程序(App)、即时通信App等。开发端通过分析小程序的能力特征,可以对冗余的代码进行优化。
[0024]用户端103上可以安装有各种通讯客户端应用,例如小程序SDK、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。用户端的宿主可以分析小程序的能力特征,从而选择合适的小程序下发,避免下发的小程序无法运行。
[0025]服务器提供了小程序框架,也可以分析小程序的能力特征,对小程序框架进行优化。另外在小程序框架进行底层能力升级或历史问题修复时,小程序的能力特征也可以作
为小程序影响面的参考依据。
[0026]需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。服务器也可以是云服务器,或者是带人工智能技术的智能云计算服务器或智能云主机。
[0027]需要说明的是,本公开的实施例所提供的用于检测小程序能力特征的方法一般由开发端101、服务器102、用户端103执行,相应地,用于检测小程序能力特征的装置一般设置于开发端101、服务器102、用户端103中。
[0028]应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的开发端、服务器、用户端。
[0029]继续参考图2,示出了根据本公开的用于检测小程序能力特征的方法应用于开发端的一个实施例的流程200。该用于检测小程序能力特征的方法,包括以下步骤:
[0030]步骤201,获取小程序包。<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于检测小程序能力特征的方法,包括:获取小程序包,其中,所述小程序包中包括代码;基于能力特征集合对应的关键词集合,对小程序包内的代码进行查找;根据查找到的关键词确定出静态能力特征列表;对所述静态能力特征列表中的每个静态能力特征进行分级;将级别高于预定阈值的静态能力特征确定为运行态能力特征,得到运行态能力特征列表。2.根据权利要求1所述的方法,其中,在所述根据查找到的关键词确定出静态能力特征列表之后,所述方法还包括:基于查找到的关键词的关联词,对小程序包内的代码进行查找;若所述代码中不存在查找到的关键词的关联词,则从所述静态能力特征列表中删除相应的静态能力特征。3.根据权利要求1所述的方法,其中,所述对所述静态能力特征列表中的每个静态能力特征进行分级,包括:将所述静态能力特征列表中的每个静态能力特征与预设的能力分级表进行匹配,确定出每个静态能力特征的级别。4.根据权利要求1所述的方法,其中,所述对所述静态能力特征列表中的每个静态能力特征进行分级,包括:获取预设的能力分级模型;对于所述静态能力特征列表中的每个静态能力特征,将所述小程序的行业特征和该静态能力特征在所有小程序中使用次数占比输入所述能力分级模型,得到该静态能力特征的级别。5.根据权利要求4所述的方法,其中,所述能力分级模型为通过小程序的行业特征、小程序的能力特征历史埋点数据分析得到的线性回归函数。6.根据权利要求1

5中任一项所述的方法,其中,所述方法还包括:若宿主支持的底层能力列表中不包括所述小程序的运行态能力特征列表,禁止在所述宿主上下发所述小程序。7.根据权利要求1

5中任一项所述的方法,其中,所述方法还包括:根据所述静态能力特征列表和所述运行态能力特征列表分析所述小程序的冗余代码;删除所述冗余代码。8.根据权利要求1

5中任一项所述的方法,其中,所述方法还包括:获取多个小程序的运行态能力特征列表;基于多个运行态能力特征列表统计各运行态能力特征的使用频率;根据使用频率对各小程序的代码进行优化。9.一种用于检测小程序能力特征的装置,包括:获取单元,被配置成获取小程序包,其中,所述小程序包中包括代码;匹配单元,被配置成基于能力特征集合对应的关键词集合,对小程序包内的代码进行查找;第一确定单元,被配置成根据查找到的关键词确定出静态能力特征列表;
分级单元,被配置成对所述静态能力特征列表中的每个静态能力特征进行分级;第二确定单元,被配置成将级别高于预定阈值的...

【专利技术属性】
技术研发人员:牛潞彪苏璐
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1