当前位置: 首页 > 工具软件 > SDK-iOS > 使用案例 >

iOS SDK开发(入门指南)

易俊驰
2023-12-01

什么是SDK开发?

日常开发中,我们会遇到某些情况不能提供源码,项目组件化等需求,这时候我们就可以使用SDK开发,在OC的开发中,我们涉及到的一般是静态库(.a)或者动态库(.framework)。(注:不是所有的.framework就一定是动态库)

静态库与动态库的区别?

静态库:链接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝。表现形式为 .a和.framework 动态库:链接时不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存。 表现形式为 .dylib和.framework 注意:动态库只能苹果使用,如果项目中使用了动态库不允许上架(如:jspatch)

a与.framework有什么区别?

.a是一个纯二进制文件,.framework中除了有二进制文件之外还有资源文件。 .a文件不能直接使用,至少要有.h文件配合,.framework文件可以直接使用。 .a + .h + sourceFile = .framework。 建议用.framework.

接下来将以实例帮助大家创建一个自己的.framework

首先我们先创建一个.workspace

创建完毕后,再创建一个 .frmawork
将创建好的 frmawork加入到 workspace
framewrok中可以封装入自己需要封装的内容
eg: 我在 StringUtils中加入了一个测试方法

#import "StringUtils.h"

@implementation StringUtils
+ (NSString *)testString:(NSString *)string {
    
    return [@"MQTestFramework: " stringByAppendingString:string];
}
@end
复制代码

接下来进行项目配置:

1、设置Build Setting参数 将Build Active Architecture only设置为NO

2、设置Build Setting参数 Mach-O Type 为Static Library (配置静态、动态)

3、设置Build Setting参数 在Architectures下增加armv7s

4、在Build Phases中设置需要公开和需要隐藏的头文件

5、将头文件引入到MQTestFramwork (自己SDK的头文件)

6、 Command + B运行项目,在 Product中找到 framework
####framework使用 将封装好的 .framework拉入需要使用的项目中
使用封装好的功能
运行:

转载于:https://juejin.im/post/5cf8ad416fb9a07ee063073a

 类似资料: