The embodiment of this application provides a code detection method and device, which relates to the field of communication technology. It can reduce the conflict between the original code and the extended code caused by the upgrade of the original code, and reduce the destructive effect of the extended code on the original code. The method includes: the detection device obtains the target native code and the target extended code based on the target native code; the detection device divides the target extended code into N consecutive code blocks by comparing the target native code and the target extended code; the detection device performs at least one code block in the N code blocks. The evaluation results are used to indicate the probability of collision between the target extension codes, and the detection device displays the evaluation results.
【技术实现步骤摘要】
一种代码检测方法及装置
本申请实施例涉及通信
,尤其涉及一种代码检测方法及装置。
技术介绍
目前,许多开发商选择在原生操作系统(例如安卓)的原生代码上开发自己的扩展操作系统,例如,小米基于安卓的原生代码开发出的MIUI操作系统,华为基于安卓的原生代码开发出的EMUI(EmotionUserInterface)操作系统等。这些扩展操作系统的代码可称为扩展代码,扩展代码一般是在原生代码的基础上对原生代码进行一些修改后得到的。例如,如图1所示,开发人员基于安卓版本3.0中的原生代码11,将该原生代码11中的第一代码段101修改为第二代码段102,得到扩展操作系统A的扩展代码12。而基于原生代码11的安卓版本3.0会不定期升级,那么,如果在升级安卓版本4.0的过程中上述第一代码段101被修改为第三代码段103,则升级后的原生代码11与扩展代码12在第三代码段103的位置出现冲突现象,此时,扩展操作系统A很可能无法兼容升级后的安卓版本4.0。需要开发人员对扩展代码12进行代码重组、功能重构等大量工作支持升级后的安卓版本4.0。
技术实现思路
本申请的实施例提供一种代码检测方法及装置,可以降低因原生代码升级引发的原生代码与扩展代码之间的冲突现象,降低扩展代码对原生代码的破坏性。为达到上述目的,本申请的实施例采用如下技术方案:第一方面,本申请的实施例提供一种代码检测方法,包括:检测设备获取目标原生代码和目标扩展代码,该目标扩展代码为基于该目标原生代码得到的;进而,检测设备可通过比较该目标原生代码和该目标扩展代码,将该目标扩展代码划分为N个连续的代码块,N≥1;那么,检 ...
【技术保护点】
1.一种代码检测方法,其特征在于,包括:检测设备获取目标原生代码和目标扩展代码,所述目标扩展代码为基于所述目标原生代码得到的;所述检测设备通过比较所述目标原生代码和所述目标扩展代码,将所述目标扩展代码划分为N个连续的代码块,N≥1;所述检测设备对所述N个代码块中的至少一个代码块进行评估,得到所述目标扩展代码的评估结果,所述评估结果用于指示所述目标扩展代码发生冲突现象的几率;所述检测设备显示所述评估结果。
【技术特征摘要】
1.一种代码检测方法,其特征在于,包括:检测设备获取目标原生代码和目标扩展代码,所述目标扩展代码为基于所述目标原生代码得到的;所述检测设备通过比较所述目标原生代码和所述目标扩展代码,将所述目标扩展代码划分为N个连续的代码块,N≥1;所述检测设备对所述N个代码块中的至少一个代码块进行评估,得到所述目标扩展代码的评估结果,所述评估结果用于指示所述目标扩展代码发生冲突现象的几率;所述检测设备显示所述评估结果。2.根据权利要求1所述的方法,其特征在于,所述检测设备在显示界面中显示所述评估结果,包括:所述检测设备使用不同色块在显示界面中显示所述N个代码块,其中,每个代码块的颜色用于指示该代码块的代码块类型。3.根据权利要求2所述的方法,其特征在于,在所述检测设备在显示界面中显示所述评估结果之后,还包括:当检测到用户触发所述N个代码块中第一代码块所在的色块时,所述检测设备显示评估所述第一代码块时的评估细节。4.根据权利要求1-3中任一项所述的方法,其特征在于,所述检测设备对所述N个代码块中的至少一个代码块进行评估,得到所述目标扩展代码的评估结果,包括:对于所述至少一个N个代码块中的每个代码块,所述检测设备按照该代码块的代码块类型对该代码块进行打分;所述检测设备将得到的所述至少一个代码块的打分信息作为所述目标扩展代码的评估结果。5.根据权利要求4所述的方法,其特征在于,所述检测设备按照该代码块的代码块类型对该代码块进行打分,包括:所述检测设备按照该代码块的代码块类型和该代码块的大小,对该代码块进行打分。6.根据权利要求1-5中任一项所述的方法,其特征在于,所述检测设备通过比较所述目标原生代码和所述目标扩展代码,将所述目标扩展代码划分为N个连续的代码块,包括:所述检测设备通过比较所述目标原生代码和所述目标扩展代码,将所述目标扩展代码中与所述目标原生代码连续相同的代码段落作为一个代码块,并将所述目标扩展代码中与所述目标原生代码连续不同的代码段落作为一个代码块,得到N个连续的代码块。7.根据权利要求1-6中任一项所述的方法,其特征在于,检测设备获取目标原生代码和目标扩展代码,包括:所述检测设备获取用户输入的采集路径;所述检测设备根据所述采集路径,采集所述目标原生代码和所述目标扩展代码。8.根据权利要求1-7中任一项所述的方法,其特征在于,在所述检测设备显示所述评估结果之后,还包括:所述检测设备显示对所述目标扩展代码的修改策略;响应于用户对所述修改策略的触发操作,所述检测设备执行所述修改策略。9.根据权利要求8所述的方法,其特征在于,所述修改策略包括:转换代码块的代码块类型,和/或,合并所述目标扩展代码中的至少两个代码块。10.根据权利要求1-9中任一项所述的方法,其特征在于,在所述检测设备对所述N个代码块中的至少一个代码块进行评估,得到所述目标扩展代码的评估结果之后,还包括:当所述评估结果不符合预设的入库条件时,所述检测设备禁止所述目标扩展代码从开发环境投入生产环境中的代码库运行。11.一种检测...
【专利技术属性】
技术研发人员:陈晓晓,陈浩,童碧峰,涂小兵,吕洪雨,马宇驰,桂汪海,周平科,周犇,林英禄,东巍,
申请(专利权)人:华为终端东莞有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。