iOS pod库包含MRC类

在我们iOS开发过程中,碰到的大部分文件都是基于ARC内存管理的,但也免不了用到一些三方的MRC的代码,这里介绍三种方法来编写包括MRC文件的.podspec文件。

1).在podspec中指定requires_arc:false,同时指定requires_arc的文件,eg:

这样写的好处是别的项目拉取到你pod源码的时候,不会多出来一个包含MRC文件的文件夹,看起来代码比较完整;

objectivec 复制代码
s.requires_arc = false
s.requires_arc = ['Classes/ARC/**/*.m']
2).requires_arc:true,然后通过subspec来指定MRC文件,eg:
objectivec 复制代码
#默认true,该行可不写

  s.requires_arc = true

#指明非ARC路径,所有.m文件会被添加标记-fno-objc-arc!

 non_arc_files = 'QGB_IM2/Classes/IMControllers/IMDataDrive/AsyncUDP/**/*.{h,m,mm,c,pch}'
3).在subsepc中指定非ARC
objectivec 复制代码
sss.subspec 'AsyncUDP' do |ssss|
     ssss.source_files = 'QGB_IM2/Classes/IMControllers/IMDataDrive/AsyncUDP/**/*.{h,m,mm,c,pch}'
#此库为MRC,非ARC
     ssss.requires_arc = false
end

完成后pod install

相关推荐
UnicornDev28 分钟前
从零开始学iOS开发(第四十五篇):SwiftUI 数据可视化进阶 —— 构建交互式图表与仪表盘
ios
jerrywus19 小时前
别再陪 AI 调 iOS 了:用 cmux + baguette,让 Claude 在你的模拟器里"自己动手"
前端·ios·claude
MonkeyKing715520 小时前
iOS 开发 Block 底层结构、循环引用及解决方案
ios·面试
文件夹__iOS20 小时前
Swift 5.9 被严重低估的特性:参数包,一次性干掉重复泛型重载
ios·swiftui·swift
薛定猫AI20 小时前
【技术干货】用 AI + Expo 打通 iOS / Android / Web 跨端应用开发:从架构到代码生成实战
android·人工智能·ios
MonkeyKing21 小时前
iOS关联对象底层实现与内存管理细节
ios
90后的晨仔1 天前
SwiftUI 高级特性第2章:组合与容器
ios
pop_xiaoli2 天前
【iOS】SDWebImage源码
macos·ios·objective-c·cocoa
MonkeyKing3 天前
消息发送与转发流程
ios
移动端小伙伴3 天前
我受够了 Xcode 的 SPM 网络问题,写了个脚本一劳永逸
ios