iOS代码封装成.a文件(封装SDK)

时间:2023-01-01 16:32:09

在众多开源的大神的博客里经整理如下:(已测试ok)

一、描述一下

Build ActiveArchitecture Only设置成YES;

Architectures按Xcode默认配置,arm64向前兼容;

制作.a静态库,需要要保证兼容性,包括不同iOS设备以及模拟器运行不出错,所以尽量做到最大的兼容性。

ValidArchitectures设置为:armv7|armv7s|arm64|i386|x86_64

二、图文攻略

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

iOS代码封装成.a文件(封装SDK)

2.    工程名按自己的需求随意了。

iOS代码封装成.a文件(封装SDK)

3.    把需要封装的写好的xxx.h和xxx.m全部引入工程。

iOS代码封装成.a文件(封装SDK)

4.    引入头文件。

iOS代码封装成.a文件(封装SDK)

5.    生成静态库:分为手机和模拟器2种(手机端的只有手机能调用,模拟器的只有模拟器能调)

1>生成模拟器静态库,生成后,右键.a文件,选择show in Finder可以进行查看;

iOS代码封装成.a文件(封装SDK)

2>生成手机静态库,生成后,右键.a文件,选择show in Finder可以进行查看;

iOS代码封装成.a文件(封装SDK)

6.    打开终端,用下面指令合成一下到桌面,方便使用。

lipo -create 模拟器中.a的路径 真机中.a的路径 -output /Users/mac/Desktop/libXXX.a

例如:

lips(这里是空格,没括号)-create(这里是空格,没括号)/Users/mac/Library/Developer/Xcode/DerivedData/StaticLibraryNameSDK-fgfhddoykewmwkdnsmoesvcphdsk/Build/Products/Debug-iphonesimulator/libStaticLibraryNameSDK.a(这里是空格,没括号)/Users/mac/Library/Developer/Xcode/DerivedData/StaticLibraryNameSDK-fgfhddoykewmwkdnsmoesvcphdsk/Build/Products/Debug-iphoneos/libStaticLibraryNameSDK.a(这里是空格,没括号)-output(这里是空格,没括号)/Users/mac/Desktop/libStaticLibraryNameSDK.a

输入后,回车即可,桌面上生成的.a就是所需要的了。