[发明专利]IOS应用的方法耗时、加载视图耗时的监测方法及系统有效

专利信息
申请号: 201810065372.0 申请日: 2018-01-23
公开(公告)号: CN108197004B 公开(公告)日: 2021-04-27
发明(设计)人: 张骏;张文明;陈少杰 申请(专利权)人: 武汉斗鱼网络科技有限公司
主分类号: G06F11/30 分类号: G06F11/30
代理公司: 武汉智权专利代理事务所(特殊普通合伙) 42225 代理人: 张凯
地址: 430000 湖北省武汉市东湖开*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: ios 应用 方法 耗时 加载 视图 监测 系统
【权利要求书】:

1.一种IOS应用的方法耗时监测方法,其用于监测所述IOS应用调用的主线程中各方法的调用耗时,其特征在于:

将objc_msgSend函数指针设置为hook函数;所述hook函数包括:第一函数,其用于获取objc_msgSend函数的参数;第二函数,其用于使用objc_msgSend函数的参数调取objc_msgSend函数并记录开始调取时间;第三函数,其用于objc_msgSend函数调取完毕时,记录objc_msgSend函数的调取结束时间,根据调取开始时间和调取结束时间计算出调取objc_msgSend函数的调用耗时;

IOS应用调用主线程中任一方法时,通过所述objc_msgSend函数指针调用hook函数,通过所述hook函数计算出调取主线程中该方法时objc_msgSend函数的调用耗时;通过调用hook函数分别获取IOS应用调用主线程中各方法时objc_msgSend函数的调用耗时;

定义一个Objective-C的类,并实现该类的单例加载;通过所述Objective-C的类分别获取IOS应用调用主线程中各方法时objc_msgSend函数的调用耗时并转换为所述Objective-C的类中的对象;

创建一个C语言文件MethodCoreLib.c及其头文件MethodCoreLib.h;在所述头文件中创建C语言层开始拦截API,C语言层停止拦截API和C语言层获取拦截结果API;在所述C语言文件MethodCoreLib.c文件中定义两个全局变量:拦截开关和拦截结果;拦截开关用于控制开始或停止通过所述objc_msgSend函数指针调用hook函数;拦截结果用于存储所述hook函数计算出的调取objc_msgSend函数的调用耗时;在C语言层开始拦截API中设置拦截开关为开始,在C语言层停止拦截API中设置拦截开关为停止,在C语言层获取拦截结果API中设置将拦截结果传出并置空;

在所述Objective-C的类中定义OC层开始拦截API和OC层停止拦截API;OC层开始拦截API用于调用C语言层开始拦截API,OC层停止拦截API用于调用C语言层停止拦截API和C语言层获取拦截结果API;

用户选择开始监测IOS应用调用的主线程中各方法的调用耗时,通过OC层开始拦截API调用C语言层开始拦截API开始通过所述objc_msgSend函数指针调用hook函数,通过所述hook函数计算出的调用主线程中各方法时objc_msgSend函数的调用耗时;将计算出的调用主线程中各方法时objc_msgSend函数的调用耗时分别添加进所述拦截结果;

用户选择停止监测IOS应用调用的主线程中各方法的调用耗时,通过OC层停止拦截API调用C语言层停止拦截API停止通过所述objc_msgSend函数指针调用hook函数,并通过C语言层获取拦截结果API从所述拦截结果中获取到调用主线程中各方法时objc_msgSend函数的调用耗时并置空所述拦截结果。

2.如权利要求1所述的一种IOS应用的方法耗时监测方法,其特征在于:第二函数还用于从所述objc_msgSend函数的参数中获取调用主线程中方法的嵌套层级。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201810065372.0/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top