[发明专利]一种核对APK内多国语言的方法及其系统有效
申请号: | 201510166613.7 | 申请日: | 2015-04-09 |
公开(公告)号: | CN104765635B | 公开(公告)日: | 2020-01-10 |
发明(设计)人: | 陈潇潞 | 申请(专利权)人: | 上海斐讯数据通信技术有限公司 |
主分类号: | G06F40/194 | 分类号: | G06F40/194 |
代理公司: | 33246 浙江千克知识产权代理有限公司 | 代理人: | 周希良 |
地址: | 201620 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 核对 apk 国语 方法 及其 系统 | ||
本发明公开了一种核对APK内多国语言的系统,包含:抓取模块,用于抓取待测试的APK文件;反编译模块,与抓取模块连接,用于反编译待测试的APK文件,以获取对比文件及源文件;格式校验模块,与反编译模块连接,用于校验对比文件及源文件的格式;字段比对模块,与格式校验模块连接,用于对比源文件与对比文件中的字段是否相同;结果输出模块,与字段比对模块连接,用于输出字段比对模块的结果;存储模块,与结果输出模块连接,用于存储对比结果。本发明还公开了一种核对APK内多国语言的方法本发明目的在于提供及其系统,能够实现不同Values文件中string.xml文件之间的对比,并且能够与字典文件进行对比,指出字典文件的缺陷,测试效率高,准确率高。
技术领域
本发明涉及语言间的对比方法,具体涉及一种核对APK内多国语言的方法及其系统。
背景技术
现有技术中对比android上不同应用在多国语言下的文字,通常采用手工对比法。方法大致为手持两台不同语言的机器,对比相同页面下是否存在相同的字符串,并手动记入相同的内容。
手工方法测试一个手机模块需要耗费2-3小时,且一些隐藏的比较深的模块和需要特殊条件(如低电量,低内存等)才能触发的提示很难发现。如果还需要结合字典查找,则花费时间更久。最后,提交的错误记录是根据界面截图而来,开发人员还需要时间定位这些字符串。
发明内容
本发明的目的在于提供一种核对APK内多国语言的方法及其系统,能够实现不同Values文件中string.xml文件之间的对比,并且能够与字典文件进行对比,指出字典文件的缺陷,测试效率高,准确率高。
为了达到上述目的,本发明通过以下技术方案实现:一种核对APK内多国语言的方法,其特点是,包含以下步骤:
S1、抓取待测试的APK文件,并对待测试的APK文件进行反编译以获得对比文件及源文件;
S2、解析对比文件,获取对比文件中所有节点的属性名和内容字符串,新建一个MapFile字段构成的List,并将节点的属性名和内容字符串分别存入MapFile字段的label和contrastText;
S3、解析源文件,获取源文件中所有节点的属性名和内容字符串,新建一个MapFile字段构成的List,并将节点的属性名和内容字符串分别存入MapFile字段的label和srcText;
S4.1、获取源文件List中的一个元素,将该元素中的label和srcText字段与对比文件中一个元素的label和contrastText字段进行对比;
S5、判断字段是否相同;
S5.1、若是,则输出字段相符的对比结果,从源文件中选取下一个元素再执行步骤S4.1;
若否,则执行步骤S6;
S6、判断对比文件中是否包含其他元素;
若是,则从对比文件中选取下一个元素再执行步骤S4.1;
若否,则执行步骤S7;
S7、判断源文件中是否包含其他元素;
若是,则从源文件中选取下一个元素再执行步骤S4.1;
S7.1、若否,则输出字段不相符的对比结果。
所述的步骤S1中还包含一步骤S1.1:
S1.1、判断源文件是否为xml格式;
若是,则执行步骤S2;
S1.1.1、若否,则输出源文件为无效文件的结果。
所述的步骤S1还包含与一步骤S1.2:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海斐讯数据通信技术有限公司,未经上海斐讯数据通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510166613.7/2.html,转载请声明来源钻瓜专利网。