iOS import包

Frameworks

Frameworks 顾名思义就是框架,是第三方打包完成看不到源码,可以直接使用的

在项目中引用方式

c 复制代码
OC  引用某一个文件,Frameworks一般会提供一个h文件引用全部其他文件
#import <JLRoutes/JLRoutes.h>
c 复制代码
swift  引用一个包,相当于引用了Frameworks中的所有文件
import JLRoutes

Pods 方式

Pods 在iOS中对封装的源码进行管理,可以视频pod方式导入项目中,相当于能看见源代码也能修改源代码的 Frameworks,有的不会生成Frameworks类似的包如:GrowingIO(因为在swift中import GrowingIO失败)

在项目中引用方式

c 复制代码
OC  引用某一个文件,Pods一般会提供一个h文件引用全部其他文件
#import <JLRoutes/JLRoutes.h>
c 复制代码
swift  引用一个包,相当于引用了Pods中的所有文件
import JLRoutes

-Bridging-Header.h 桥接文件

桥接文件,即是OC的文件通过桥接到Swift能调用

1、在swift使用中我们可以对包(Frameworks/Pods)进行桥接,如

c 复制代码
#import <JLRoutes/JLRoutes.h>
#import <GrowingIO/Growing.h>

2、绝不能使用

#import "JLRoutes.h"

#import "Growing.h"

虽然不会错报,会出现控制台打印变量问题

3、项目中添加的OC代码就得使用

c 复制代码
#import "JLRoutes.h"
#import "Growing.h"

import导入方式

如果是单个文件就需要导入,直接使用;如果是包

c 复制代码
import AFNetworking

桥接文件生成:

在runner里面新建一个swift文件,点击提示就可以建一个桥文件了

如果 在 OC 的项目里, 首次创建一个 .swift 文件

或 在 Swift 项目里, 首次 创建一个 OC 的 .h .m 文件

那么 Xcode 会默认为项目 创建一个 " 项目名-Bridging-Header.h" 的 桥接头文件

这是一种便捷的方式,去创建一个 Bridging-Header.h 文件,

然后 把临时创建的 .swift 文件 或 .h .m 文件 删除即可 。

如何 手动创建一个 Bridging-Header.h 文件 呢 ?

1、手动创建一个 " 项目名-Bridging-Header.h " 的 .h 文件 (建议规范命名)

2、打开 TARGETS --> 选择当前的 target

3、选择 Build Settins --> 搜索: Bridging

4、设置 Swift Compiler - General 下 的 " Object-C Bridging Header " 的路径

c 复制代码
路径: 项目名/BridgingHeader名.h
如:   SRSwiftDemo/SRSwiftDemo-Bridging-Header.h

路径: $(SRCROOT)/项目名/BridgingHeader名.h ( 我的项目文件是放在 Desktop 下的 )
如:   $(SRCROOT)/SRSwiftDemo/SRSwiftDemo-Bridging-Header.h

也就是: 根据设置的路径, 要能找到这个 Bridging-Header.h 文件

设置后 显示如 下图:
相关推荐
安和昂6 小时前
【iOS】Blocks
macos·ios·cocoa
OKXLIN1 天前
IOS UITextField 无法隐藏键盘问题
ios·objective-c
AL.千灯学长1 天前
DeepSeek接入Siri(已升级支持苹果手表)完整版硅基流动DeepSeek-R1部署
人工智能·gpt·ios·ai·苹果vision pro
openinstall全渠道统计2 天前
免填邀请码工具:赋能六大核心场景,重构App增长新模型
android·ios·harmonyos
早起的年轻人2 天前
Flutter CupertinoNavigationBar iOS 风格导航栏的组件
flutter·ios
貂蝉空大2 天前
uni-app开发安卓和ios app 真机调试
android·ios·uni-app
胖虎12 天前
iOS 中的圆角与平滑圆角:从新特性到老项目适配
ios·圆角·平滑圆角·cornercurve
志飞2 天前
ios UICollectionView使用自定义UICollectionViewCell
ios·collectionview·自定义cell
Neo Evolution3 天前
Flutter与移动开发的未来:谷歌的技术愿景与实现路径
android·人工智能·学习·ios·前端框架·webview·着色器
没头脑的ht3 天前
ios App的启动过程和启动优化
ios