[发明专利]应用程序组件的编译方法、装置、设备及存储介质在审
申请号: | 202110443462.0 | 申请日: | 2021-04-23 |
公开(公告)号: | CN113127000A | 公开(公告)日: | 2021-07-16 |
发明(设计)人: | 冯毅飞 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F9/445 |
代理公司: | 北京开阳星知识产权代理有限公司 11710 | 代理人: | 吴崇 |
地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用程序 组件 编译 方法 装置 设备 存储 介质 | ||
1.一种应用程序组件的编译方法,其特征在于,包括:
获取空的第一iOS工程和所述第一iOS工程的第一声明文件,所述第一声明文件中至少声明了所述第一iOS工程对待编译的第一组件的依赖,以及所述第一组件对应的函数库类型的信息;
响应于所述第一组件的函数库类型为动态库framework,则基于所述第一声明文件将所述第一组件集成到所述第一iOS工程,并根据预先得到的第一主工程,将所述第一主工程中各组件的头文件复制到所述第一iOS工程中,得到第二iOS工程;
对所述第二iOS工程进行编译,并在编译到无定义的符号时,跳过所述符号继续编译,直到编译结束,得到所述第一组件对应的编译文件。
2.根据权利要求1所述的方法,其特征在于,所述获取空的第一iOS工程和所述第一iOS工程的第一声明文件之后,所述方法还包括:
响应于所述第一组件的函数库类型为静态库,则调用预设的第一hook脚本,将所述第一组件的函数库类型修改为动态库framework。
3.根据权利要求1所述的方法,其特征在于,所述得到所述第一组件对应的编译文件之后,所述方法还包括:
基于第一用户指令,将所述第一主工程中的第二组件替换为所述第一组件对应的编译文件,并对所述第一主工程进行重新签名,得到第二主工程,其中所述第一组件由所述第二组件更新得到;
基于第二用户指令运行所述第二主工程进行调试。
4.根据权利要求3所述的方法,其特征在于,所述获取空的第一iOS工程和所述第一iOS工程的第一声明文件之前,所述方法还包括:
获取所述第一主工程的第二声明文件,所述第二声明文件中至少包括所述第一主工程对各组件的依赖关系,以及所述各组件对应的函数库类型的信息;
响应于所述各组件对应的函数库类型为静态库,则调用预设的第二hook脚本,将所述第二声明文件中记录的所述各组件的函数库类型修改为动态库framework;
基于修改后的第二声明文件,集成得到所述第一主工程。
5.一种编译装置,其特征在于,包括:
第一获取模块,用于获取空的第一iOS工程和所述第一iOS工程的第一声明文件,所述第一声明文件中至少声明了所述第一iOS工程对待编译的第一组件的依赖,以及所述第一组件对应的函数库类型的信息;
第一集成模块,用于在所述第一组件的函数库类型为动态库framework时,基于所述第一声明文件将所述第一组件集成到所述第一iOS工程,并根据预先得到的第一主工程,将所述第一主工程中各组件的头文件复制到所述第一iOS工程中,得到第二iOS工程;
编译模块,用于对所述第二iOS工程进行编译,并在编译到无定义的符号时,跳过所述符号继续编译,直到编译结束,得到所述第一组件对应的编译文件。
6.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第一处理模块,用于在所述第一组件的函数库类型为静态库时,调用预设的第一hook脚本,将所述第一组件的函数库类型修改为动态库framework。
7.根据权利要求5所述的装置,其特征在于,所述装置还包括:
第二处理模块,用于基于第一用户指令,将所述第一主工程中的第二组件替换为所述第一组件对应的编译文件,并对所述第一主工程进行重新签名,得到第二主工程,其中所述第一组件由所述第二组件更新得到;
调试模块,用于基于第二用户指令运行所述第二主工程进行调试。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于获取所述第一主工程的第二声明文件,所述第二声明文件中至少包括所述第一主工程对各组件的依赖关系,以及所述各组件对应的函数库类型的信息;
第三处理模块,用于在所述各组件对应的函数库类型为静态库时,调用预设的第二hook脚本,将所述第二声明文件中记录的所述各组件的函数库类型修改为动态库framework;
第二集成模块,用于基于修改后的第二声明文件,集成得到所述第一主工程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110443462.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种呼吸科用人工呼吸器
- 下一篇:一种自动化控制的自适应夹具