[发明专利]获取日志的方法及装置、存储介质、电子装置在审
申请号: | 201811076537.0 | 申请日: | 2018-09-14 |
公开(公告)号: | CN109376074A | 公开(公告)日: | 2019-02-22 |
发明(设计)人: | 钱毅 | 申请(专利权)人: | 浙江口碑网络技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F16/901;G06F16/9032 |
代理公司: | 北京中强智尚知识产权代理有限公司 11448 | 代理人: | 黄耀威 |
地址: | 310012 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 源输出 目标输出 日志信息 存储介质 电子装置 应用程序 日志 应用程序调用 函数获取 函数替换 调取 跳转 打印 | ||
1.一种获取日志的方法,其特征在于,包括:
在启动应用程序后,将所述应用程序的源输出函数替换成目标输出函数,其中,所述源输出函数是用于打印日志信息的c函数,所述目标输出函数是hook所述源输出函数的c方法;
在所述应用程序调用所述源输出函数时,从所述源输出函数跳转到所述目标输出函数;
使用所述目标输出函数获取日志信息。
2.根据权利要求1所述的方法,其特征在于,在使用所述目标输出函数获取日志信息之后,所述方法还包括:
在所述应用程序的页面上展示所述日志信息。
3.根据权利要求1所述的方法,其特征在于,将所述应用程序的源输出函数替换成目标输出函数包括:
使用fishhook工具将所述应用程序的源NSLog()函数替换成目标NSLog()函数,其中,所述源输出函数包括所述源NSLog()函数,所述目标输出函数包括所述目标NSLog()函数。
4.根据权利要求3所述的方法,其特征在于,使用fishhook工具将所述应用程序的源NSLog()函数替换成目标NSLog()函数包括:
修改所述源NSLog()函数的函数指针,将所述函数指针指向到所述目标NSLog()函数。
5.根据权利要求1所述的方法,其特征在于,从所述源输出函数跳转到所述目标输出函数包括:
从间接地址表获取符号表索引;
通过所述符号表索引得到所述源输出函数对应的符号表表项;
通过所述符号表表项查找所述源输出函数的函数名在字符串表的字符串表索引;
通过所述字符串表和所述字符串表索引查找所述目标输出函数的函数名;
在所述源输出函数的函数名和所述目标输出函数的函数名匹配时,将所述源输出函数的函数表项目替换为所述目标输出函数的函数表项目。
6.根据权利要求1所述的方法,其特征在于,使用所述目标输出函数获取日志信息包括:
使用所述c方法打印所述应用程序的日志信息;
在所述c方法内获取所述日志信息。
7.根据权利要求2所述的方法,其特征在于,在所述应用程序的页面上展示所述日志信息之后,所述方法包括:
在所述应用程序的LogView中接收关键字;
以所述关键字为条目过滤所述日志信息,并在所述LogView上展示过滤后的日志信息。
8.一种获取日志的装置,其特征在于,包括:
替换模块,用于在启动应用程序后,将所述应用程序的源输出函数替换成目标输出函数,其中,所述源输出函数是用于打印日志信息的c函数,所述目标输出函数是hook所述源输出函数的c方法;
跳转模块,用于在所述应用程序调用所述源输出函数时,从所述源输出函数跳转到所述目标输出函数;
获取模块,用于使用所述目标输出函数获取日志信息。
9.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7任一项中所述的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江口碑网络技术有限公司,未经浙江口碑网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811076537.0/1.html,转载请声明来源钻瓜专利网。