iOS打包framework库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS打包framework库相关的知识,希望对你有一定的参考价值。

参考技术A 环境:xcode13以上

如果项目中引用了两个静态库A、B。并且B中也引用了A,那么此时运行就回报错,重复定义,解决方式可以给B打包动态库
步骤和上面静态库一样,区别在于:

注入动态库后打包ipa闪退【完结】

参考技术A 制作了动态库,放到ipa文件里面去

install_name_tool -change /Library/Frameworks/CydiaSubstrate.framework/CydiaSubstrate @loader_path/libsubstrate.dylib qqAngel.dylib

 /Users/joe/Desktop/逆向安装包/将dylib注入到macho的工具/yololib QQ  qqAngel.dylib

重签名后,安装到手机上点击打开闪退。

Exception Type: EXC_CRASH (SIGABRT)

Exception Codes: 0x0000000000000000, 0x0000000000000000

Exception Note:  EXC_CORPSE_NOTIFY

Termination Description: DYLD, Library not loaded: @executable_path/Frameworks/libsubstrate.dylib | Referenced from: /var/containers/Bundle/Application/0A5D0588-5A5B-4F59-B3D8-0A416163B460/QQ.app/qqAngel.dylib | Reason: no suitable image found.  Did find: | /usr/lib/libsubstrate.dylib: file system sandbox blocked stat()

Triggered by Thread:  0

万恶的Library not loaded、no suitable image found。

注意@executable_path/Frameworks/libsubstrate.dylib,而我写的是@loader_path/libsubstrate.dylib,会不会是这里原因呢?

解决了:把libsubstrate.dylib复制一个到/Frameworks/libsubstrate.dylib下可以了

以上是关于iOS打包framework库的主要内容,如果未能解决你的问题,请参考以下文章

iOS 开发打包 Framework 时使用 CocoaPods 引入第三方库的方法

iOS制作Framework依赖第三方Framework

iOS 打包framework(包含第三方framework或.a文件)

iOS 之.a静态库创建、打包以及静态库之间的引用

在Pods里面生成frameWork或者.a文件

iOS静态库的打包-徐明伟