iOS开发之打包静态库(二)

接上章第三步:其实这时只能在模拟器上运行的静态库已经打包成功了:



这时可以看到,include里面多了一个项目名称的文件夹,其实这个可以不要的,打开静态库项目,修改一下Subpath就可以了:

(1)、原来的Subpath:


(2)、修改为:



再次打开libStaticLibTest.a文件的路径,将其删除,重新运行,再次生成libStaticLibTest.a
文件,可以看到,include文件夹下面只有需要暴露的.h文件了:


第四步:添加暴露的头文件,其实在第三步演示修改Subpath的截图里面,在Subpath的下方,那里就是添加暴露头文件的地方,点加号和减号,增加和删除要暴露的头文件:


在文件路径中删掉已经存在的libStaticLibTest.a,再次运行,再打开libStaticLibTest.a文件的位置,可以看到include文件夹里面多了几个头文件:

第五步:需要注意的是,静态库是分模拟器和真机的,还分debug模式和release模式,真机模式,运行的时候选择真机模式运行,就可以生成可以在真机环境上运行的静态库了,debug和release模式,就是编辑EditScheme选项:

(1)、真机模式:

(2)、debug和release模式:


就这些配置项不一样而已,其他步骤都一样。

第六步:合并模拟器下的.a文件和真机下的.a文件,让其在模拟器和真机上都用运行:

先找到两个.a文件,并将真机模式的.a文件改名为libStaticLibTestR.a(防止两个文件同时拖入桌面的时候重名替换),并将其拖入桌面位置,以便于下一步操作:



打开终端:cd 到桌面:cd desktop  然后输入以下命令:lipo -create libStaticLibTest.a libStaticLibTestR.a -output finalStaticLibTest.a

就会生成一个最终的.a文件了。 


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,027评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,784评论 25 709
  • 一、前言 “隔着一段距离看,很多有趣的知识看起来都很唬人。”在我初出茅庐的时候着实觉得那些后缀名为“.framew...
    萝卜酱紫阅读 744评论 0 5
  • 简介 什么是库? 库是程序代码的集合,是共享程序代码的一种方式 根据源代码的公开情况,库可以分为2种类型 开源库 ...
    JonesCxy阅读 581评论 0 0
  • 转自 http://www.cnblogs.com/wendingding/p/3893095.html 一、简单...
    在这蓝色天空下阅读 693评论 1 3