1.创建项目,选择 'Framework&Library'下的'Static Library'
2.创建项目时将自己想要创建的静态库名称设为项目名称
3.然后将自己想要打包的项目文件拖到项目中或者新建
4.封装.a,暴露接口,点击Builb Phases左上角+,选择New Headers Phase,然后将要用到的类的.h文件添加到Headers里面
5.开始编译(command +B),因为模拟器和真机环境下编译的.a文件是分开的,所以我们这里编译两次,分别选择模拟器和真机(也可以选择Generic ios Devices)
6.右键Products下面的.a文件,选择Show in Finder就可以查看生成的.a文件
7.合并,将模拟器和真机的两个.a文件合并成一个。lipo -create 真机.a文件路径 模拟器.a文件路径 -output 合并后的.a文件路径
8.检测,lipo -info 合并后的.a文件路径,可以查看该文件支持的类型
9.使用,然后将合并后的.a文件和项目里面用到的.h文件拉到新项目中,即可使用
二:. framework静态库封装
1.创建项目,选择 'Framework&Library'下的'Framework'
2.创建项目时将自己想要创建的静态库名称设为项目名称
3.然后将自己想要打包的项目文件拖到项目中或者新建
4.封装.a,暴露接口,点击Builb Phases左上角+,选择New Headers Phase,然后将要用到的类的.h文件添加到Headers里面
5.开始编译(command +B),因为模拟器和真机环境下编译的.a文件是分开的,所以我们这里编译两次,分别选择模拟器和真机(也可以选择Generic ios Devices)
6.在项目默认生成的<项目名.h>中,导入要用到的类,#import <项目名/类名.h>
7.右键Products下面的.Framework文件,选择Show in Finder就可以查看生成的.Framework文件
8.合并,将模拟器和真机的两个.Framework文件合并成一个。lipo -create 真机.Framework文件路径 模拟器.Framework文件路径 -output 合并后的.Framework文件路径
8.检测,lipo -info 合并后的.Framework文件路径,可以查看该文件支持的类型
9.使用,然后将合并后的.Framework文件拉到新项目中,在使用的类里面#import <静态库名/静态库名.h>即可使用
库函数实质上就是普通的函数,只不过是别人写好的封装好的函数,这些函数都在一个文件中。 在我们编程过程用的例如C++语言的输入输出流函数cout,cin等就在iostream.h 中。 库函数的存在给程序员减少了很多负担,因为很多函数提供给程序员调用,而不要自己去写。 库函数较多的语言有C#了,几乎是库函数的天下,例如console.write()等,但是库函数不等同于头文件; 好,我总结一下: 1,库函数即是普通函数,是别人写好的封装在一个文件中,提供给程序员调用用的; 2,程序员要调用库函数,必须将包含库函数的头文件给包上,因为有了我们写程序的时候要包含头文件。例如:#include<iostream.h>,#include<stdlib.h>,using system等等。ios中后缀名为a的文件是编译好的二进制文件,一般是第三方为了保密代码而使用的。a文件里边的内容是没法看懂的,只有配合.h头文件,知道它有哪些暴露出来的属性或者函数才能调用。调用方法和平时使用 .h .m 文件一样,只是你看不见.m里边的代码而已。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)