Xcode 创建静态库封装自己的SDK

移动开发 waitig 1107℃ 百度已收录 0评论

Xcode 创建静态库封装自己的SDK

在自己的iOS工程中创建并使用一个SDK,俗称.a文件

1、创建一个静态库工程 

打开Xcode,点击File\New\Project,选择iOS\Framework and Library\Cocoa Touch Static Library新建一个静态库工程.

将工程命名为GGTestSDK,然后将工程保存到一个空目录下。

一个静态库工程由头文件和实现文件组成,这些文件将被编译为库本身。
当创建静态库工程时,Xcode会自动添加GGTestSDK.h和GGTestSDK.m。你不需要实现文件,因此右键单击GGTestSDK.m选择delete,将它删除到废纸篓中。

2、创建一个AlertView控件

其实当前的工程就已经可以用了,是时候为你的库添加一些功能了。由于本篇教程的关键在于教你怎么样创建一个GGTestSDK.a,而不是怎么样构建一个UI控件,这里你可以使用你自己封装好的控件。将你的控件从Finder中拖到Xcode下GGTestSDK目录下。

这里有一点要注意了,这里一定要勾选以下三个选项:

然后点击 Finish 进入工程:

对你的控件的头文件需要做的另一件事是将其添加到库的主头文件GGTestSDK.h中。在这个主头文件的帮助下,开发者使用你的库仅仅需要导入一个头文件,如下面的代码一样,而不是自己去选择自己需要的一块导入。

3、接下来生成静态库

1、静态库分为手机和模拟器两种(手机端的只有手机能调用,模拟器的只有模拟器能调用)。
首先,构建模拟器的静态库,如图

然后show in Finder

之后我拿到这个.a文件 还有和他相关的所有.h文件,存放在一个新的文件夹里(随便起名越屌越好)如下

现在呢,你就可以拿着这个文件夹去挥霍了。将他拖到你要应用了工程中

上面已经提到了,只能在模拟器上运行,如果我们链接手机:

构建真机的静态库,如图

改成Device 构建构成(command + B)你就会发现 libGGTestSDK.a 变黑了。
重复之前的步骤 就可以在手机上运行了(但是,模拟器又不能用了。。。。
接下来,我们就来生成一个双方都能用的libGGTestSDK.a
将模拟器.a文件和设备真机.a文件合成一个文件 首先找到对应项目的模拟器.a文件和真机.a文件(show in finder 可以看到有的两个文件夹)如下图

在终端输入 lipo -create 模拟器.a文件的路径 真机.a文件的路径 -output 合并后的保存路径
我们就得到合并之后的.a文件 eg. 

lipo -create
/Users/mac/Library/Developer/Xcode/DerivedData/KKTestSDK-ewtpefavdqrcdjcssbyvdjyevumn/Build/Products/Debug-iphoneos/libKKTestSDK.a /Users/mac/Library/Developer/Xcode/DerivedData/KKTestSDK-ewtpefavdqrcdjcssbyvdjyevumn/Build/Products/Debug-iphonesimulator/libKKTestSDK.a
-output /Users/mac/Desktop/libKKTestSDK.a 

静态库的使用:新建文件夹命名为logNewsSDK,把我们获得的.a文件和我们需要显示的.h文件拷贝进去,就
行了,然后直接拉到我们需要用到的工程里面去就行了


本文由【waitig】发表在等英博客
本文固定链接:Xcode 创建静态库封装自己的SDK
欢迎关注本站官方公众号,每日都有干货分享!
等英博客官方公众号
点赞 (0)分享 (0)