搞定SDK封装
2024-06-02 本文已影响0人
zxh123456
开发一个sdk,使用pod进行第三方库引用。
一、工程架构
-
新建一个workspace文件,
image.png
-
新建一个SDK项目和Demo项目,绑定到worksapce。
image.png
image.png
注意绑定workspace
image.png
至此文件目录如下
image.png
新建一个podfile,填写需要使用的第三方,并pod install
![](https://img.haomeiwen.com/i1328194/9ac9addc78662f58.png)
platform :ios, '12.0'
use_frameworks!
#标明目录
workspace 'SDKTemplet.xcworkspace'
#通用的pod写这里
pod 'AFNetworking','4.0.1'
#framework引入哪些pod
target 'SDK' do
project 'SDK/SDK.xcodeproj'
#pod 'aaaa'
end
#测试demo引入哪些pod
target 'SDKDemo' do
project 'SDKDemo/SDKDemo.xcodeproj'
#pod 'bbbb'
end
#这是禁用bitcode
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['ENABLE_BITCODE'] = 'NO'
end
end
end
完成后,文件目录为
![](https://img.haomeiwen.com/i1328194/cf6cd9cc88114909.png)
二、开发
先修改一下sdk的mach-o type参数
![](https://img.haomeiwen.com/i1328194/0001008c45475595.png)
sdk需要暴露出去的头文件,直接改Public就行
![](https://img.haomeiwen.com/i1328194/99418ae94d899847.png)
在sdk.h要以文件夹形式import
![](https://img.haomeiwen.com/i1328194/60504b6068e2967f.png)
三、测试
禁用user script sandboxing,xcode15报错
![](https://img.haomeiwen.com/i1328194/96370524152562e0.png)
![](https://img.haomeiwen.com/i1328194/c286613af1a392d0.png)
在demo工程引入sdk
![](https://img.haomeiwen.com/i1328194/46df1db231b70426.png)
![](https://img.haomeiwen.com/i1328194/6a89ff6acc04cee0.png)
引入sdk头文件,就可以使用了
#import <SDK/SDK.h>