XCFramework制作
如何辨别.framework是动态库还是静态库
lipo 命令的基本用法
一个工程多个target引入CocoaPods的方式
美团 iOS 工程 zsource 命令背后的那些事儿
iOS美团同款"ZSource"二进制调试实现
https://github.com/MeetYouDevs/cocoapods-imy-bin
cocoapods-binary工作原理及改进
Ruby和Cocoapods文章合集
iOS Pod 'xxx.h' file not found with <angled>includeuse "quotes" instead
由 Pod 导致的 File not found
Cocoapods整理(三)——编写podspec文件
查看app的签名:
codesign -vv -d xxx.app
查看 某个库的签名(同时可以查看某个库支持的架构):
codesign -vv -d xxx.framework
查看电脑安装好的所有证书:
security find-identity -v -p codesigning
对某个库进行重签名:
codesign -fs "Apple Development: xxx (xxx)" xxx.framework
file xxx.framework/xxx
查看支持的架构:虚岩数
lipo -info xxx.framework/xxx
删除指定的架构(如x86_64,导出后的库会自动删除签名信息):
合并几个架构(比如把模拟器的x86_64与真机的arm64合并成一个,可以一个framework同时支持真机和模拟器,导出后的库会自动删除签名信息,但是会增加包的体积)
xcode可以会在差首编译时选择xcframework中实际需要的架构编译进包中,这种方式可以减少包的体积还能一个xcframework同时支持真机与模拟器运行
1、在xcode创建framwork的工程
2、然后再创建 Podfile 将framwork的源码使用pod的方式依赖三方库
2.1 如果podfile里 use_frameworks! 是打开的,
2.2 如果podfile里 use_frameworks! 是注释掉的或者没有这一句,
3、创建 xxx.podspec 注意事项
1、这个文件必须在git仓库下的第一级目录
2、 xxx.podspec 的名字需要跟文件里的 s.name = 'xxx' 一致,这个名字也是在主app里 pod 'xxx‘ 的名字
3、指定的framwork的方式
4、指定依赖的三方库:
方式一:通过 abstract 方式引入
方式二:循环 target 添加 pod
方式三:提取公共 pods 各个 target 引入
iOS Pod 'xxx.h' file not found with includeuse "quotes" instead
好好的<>非要让你改成"",不然就报错给你看 T T
分析:
Header Search Paths中未配置对应路径。可能是.podspec文件中的“dependencies”未配置对应的依赖,导致对应依赖库的路径没有写入编译项目的“Header Search Paths”内
解决方法:
方法一:
项目->PROJECT->项目xxx->Info->Configurations->Debug->项目xxx->targetXXX->Pods-xxx.debug
能改成这个最好,如果有自定义的config,在定义的config里引入Pods-xxx.debug
方法二:
修改 Header Search Path
添加 $(PODS_ROOT) 选择 recursive
添加 $(SRCROOT) 选择 recursive
Build
pod下载iossdk的步骤:1、打开瞎判终端,进入到态则项目目录。
2、输磨闭改入命令touchPodfile创建Podfile文件,使用vi文本编辑器命令或者vscodeide修改Podfile文件。
3、完成修改后,接着输入命令podrepoupdatepodinstall,安装sdk,在项目目录下会生成wujin_ios.xcworkspace文件。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)