【技术实现步骤摘要】
本专利技术涉及通信领域,具体而言,涉及一种ios平台上捕获系统消息的方法和装置。
技术介绍
随着通信技术的发展,IOS系统越来越被人熟知,在IOS系统中,系统消息可以简单理解为方法调用,指的是由IOS操作系统或app (application,第三方应用程序)发起的对操作系统公开的api (Application Programming Interface,应用程序编程接口)方法调用。例如当对象被创建时,iOS操作系统会调用NSObject的init方法,就称这次调用为一次系统消息。在IOS系统中,捕获消息对于app行为监测很重要,要准确检测app的行为,需要对于一些关键系统消息进行捕获,并记录下来。·现有的技术中,捕获系统消息的一般方法是继承目标方法所在的类,重写目标方法,在目标方法中记录下方法调用信息或插入自定义代码,然后在调用父类的方法实现。这样既保留了父类方法的逻辑,又加入了自定义逻辑。例如要监测某对象“创建”的消息,就需要继承此对象,然后重写“创建”方法,记录下创建消息。这种方法工作量大,容易遗漏,例如,要捕获所有视图对象的创建消息,并记录下视图是何时被创建的 ...
【技术保护点】
一种IOS平台上捕获系统消息的方法,其特征在于,包括:获取当前所需执行的api的指针指向的方法体,其中,所述指针指向的方法体包括如下逻辑:调用所述api自身和记录当前所需执行的api的发生状态;执行获取到的所述当前所需执行的api的指针指向的方法体。
【技术特征摘要】
1.一种IOS平台上捕获系统消息的方法,其特征在于,包括 获取当前所需执行的api的指针指向的方法体,其中,所述指针指向的方法体包括如下逻辑调用所述api自身和记录当前所需执行的api的发生状态; 执行获取到的所述当前所需执行的api的指针指向的方法体。2.根据权利要求I所述的方法,其特征在于,在获取当前所需执行的api的指针指向的方法体之前,所述方法包括 为所述api所在的类创建分类; 在创建的所述分类中创建自定义方法,其中,所述自定义方法包含如下逻辑递归调用自身和记录系统消息发生状态; 将所述自定义方法的方法体和所述api中的方法体进行交换。3.根据权利要求2所述的方法,其特征在于,在为所述api所在的类创建分类之前,所述方法还包括确定所述api的名称和该api所在的类。4.根据权利要求3所述的方法,其特征在于,确定所述api的名称和该api所在的类的步骤包括 在IOS系统的api文档中查找到所述api所对应的信息; 根据查找到的所述api所对应的信息确定所述api的名称和该api所在的类。5.根据权利要求2至4中任一项所述的方法,其特征在于,将所述自定义方法的方法体和所述api的方法体进行交换包括 确定用于指向所述自定义方法的方法体的第一指针; 确定用于指向所述api的方法体的第二指针; 将确定的所述第一指针和确定的所述第二指针交换。6.一种IOS平台上捕获系统消息的装置,其特征在于,包括 获取单元,用于获取当前所需执行的api的指针指向的方法体,其中,所述指针指...
【专利技术属性】
技术研发人员:王海,
申请(专利权)人:北京国双科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。