iOS开发之动态库和静态库

2019-07-15  本文已影响0人  代码歌

前言

iOS中的库是共享程序代码的一种方式。库可以分为动态库和静态库,并且可以以.a文件和.framework的文件形式存在:

静态库和动态库的区别:

本文以图文并茂的方式介绍静态库和动态库的生成、集成用法以及一些注意事项,希望对新入门做SDK的小伙伴有所帮助。

一、静态库

1、.a文件生成

如图,首先创建项目时选择Static Library

Snip20190715_6.png

创建完后展开Products文件夹没有编译过是红色的(新版Xcode不是红色)


Snip20190715_4.png

真机和模拟器分别编译之后上图 .a文件变成黑色 右键show in finder 分别对应的真机和模拟器使用的静态库,我们把它导入APP中即可使用

Snip20190715_2.png

注意点:

Snip20190715_20.png
Snip20190715_21.png
2、.framework文件生成

1.创建

Snip20190715_27.png

2.新建一个类

Snip20190715_28.png

3.将想要公开的头文件公开。这步一定要做,不然将生成的.framework文件导入别的项目会报错

Snip20190715_29.png

4.将SDK设置为静态库

Snip20190715_37.png

二、动态库

动态库的创建和上面静态库方法基本一致,只是最后一步Mach-O Type 选项选择为 Dynamic Library

使用动态库时注意手动导入

Snip20190715_39.png

合并同真机和模拟器方法.a合并一样,将模拟器和真机.framework文件里的xxxFramework合并之后,随便替换一个.framework文件里的xxxFramework即可使用。

上一篇下一篇

猜你喜欢

热点阅读