iOS静态库 ---iOS-Apple苹果官方文档翻译
iOS静态库 ---iOS-Apple苹果官方文档翻译
•什么是库? 库是共享程序代码的方式,一般分为静态库和动态库。静态库与动态库的区别? 静态库:链接时完整地拷贝至可执行文件中,被多次使⽤用就为什么要使用静态库?
• 方便共享代码,便于合理使用。注意理解:无论是.a静态库还.framework静态库,我们需要 的都是二进制文件+.h+其它资源文件的形式,不同的是,.a本 身就是二进制文件,需要我们自己配上.h和其它文件才能使用, 而.framework本身已经包含了.h和其它文件,可以直接使用,如果一个静态库很复杂,需要暴露的.h比较多的话,就可 以在静态库的内部创建一个xx.h文件(一般这个xx.h文件的名 字和静态库的名字相同),然后把所有需要暴露出来的.h文件 都集中放在这个.h文件中,而那些原本需要暴露的.h都不需要 再暴露了,只需要把xx.h暴露出来就可以了。这样在用的时候 就方便很多了,只需要#import 就可以了, 实际上苹果本身就是这么做的,例如:!
#import !
怎么用?
方法1:把.framework或者.a拷贝到目标工程文件夹中,然后 添加到工程中(一般方在frameworks文件夹下),和使用其 他系统的库一样使用就可以了。:把framework的工程拷贝到要测试或者使用它的目标 工程中.

怎么用?
打开目标工程,在Frameworks文件夹上右键选择Add files to “xxx”,在刚刚导入的framework中把.xcodeproj文件加进来

怎么用? 

怎么用?
点击target下⾯面的Build Phases->Link Binary With Libraries- >"+",选择我们framework中的.framework⽂文件,然后添加.

怎么用? 在要使用的地方加入framework的头文件(此处编译器没有自
动提示,但不是错误)
然后就可以用framework里的东西了,也可以直接改变:新建一个测试工程,添加一个开发sdk的target
怎么用? 

怎么用? 

图中的1对应3中的
中的
AniiiFMWK.framewor k 最重要的一步,还是把 framework工程中的 库,引入到目标工程中
怎么用? 

怎么用? 

在用到的类中 引入framework 中对应的头文 件,就可以用了, 修改framework 的代码仍然不 用对它编译,直 接运行目标 target就能看到 变化,依然支持 断点调试.
应用举例
iOS静态库 ---iOS-Apple苹果官方文档翻译的更多相关文章
- iOS程序启动原理---iOS-Apple苹果官方文档翻译
本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址 //转载请注明出处--本文永久链接:http://www.cnblogs.com/Ch ...
- iOS数据存取---iOS-Apple苹果官方文档翻译
CHENYILONG Blog iOS数据存取---iOS-Apple苹果官方文档翻译 数据存取/*技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http:// ...
- iOS网络基础---iOS-Apple苹果官方文档翻译
CHENYILONG Blog iOS网络基础---iOS-Apple苹果官方文档翻译 iOS网络基础 技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http: ...
- iOS 静态库,动态库与 Framework
iOS 静态库,动态库与 Framework 静态库与动态库的区别 首先来看什么是库,库(Library)说白了就是一段编译好的二进制代码,加上头文件就可以供别人使用. 什么时候我们会用到库呢 ...
- iOS - 静态库的创建与使用
在日常项目开发中,不论是为了两个公司项目上的业务交流还是为了减少项目的编译时间,有的时候我们会把项目中的私密内容打包成静态库,或者是把项目中变动较少一部分打包成静态库以便提高编译效率,那么下面我们就来 ...
- IOS静态库
如何在Xcode中创建C++静态库 http://jingyan.baidu.com/article/03b2f78c111fca5ea237ae26.html iOS 如何创建和使用静态库 http ...
- iOS静态库.a文件制作和导入使用
iOS静态库.a文件制作: 1.新建Cocoa Touch Static Library工程 新建工程 - 选择iOS-FrameWork&Libary,选择 Cocoa Touch Stat ...
- iOS静态库的制作与引用
[iOS静态库的制作与引用] 1.Configuring Exported Headers To configure which headers are exported to clients, se ...
- 判断IOS静态库(.a文件)是否支持模拟器和真机运行
判断IOS静态库(.a文件)是否支持模拟器和真机运行 在mac终端下,进入到.a文件目录下,然后输入: lipo -info libMyAlertView.a Architectures in the ...
随机推荐
- 3dContactPointAnnotationTool开发日志(二九)
今天想着在Windows平台上跑通那个代码,不过它的官网上写的支持平台不包括windows,但我还是想试试,因为看他的依赖好像和平台的关系不是特别大. 看了下它的py代码,不知道是py2还是p ...
- CodeForces Round #527 (Div3) D2. Great Vova Wall (Version 2)
http://codeforces.com/contest/1092/problem/D2 Vova's family is building the Great Vova Wall (named b ...
- TCP建立连接与释放连接过程中的几个问题
TCP为何采用三次握手来建立连接,若采用两次握手可以吗,请说明理由? 不可以.采用三次握手是为了防止失效的连接请求报文段突然又传送到服务器,从而发生错误.当客户端发出的连接请求报文段由于某些原因没有及 ...
- PC和FPGA间的串口通信实现
应用笔记 V1.0 2015/03/26 PC和FPGA间的串口通信实现 概述 本文将介绍PC和FPGA间的串口通信实现的基本思路和Verilog代码,对于通信而言,收发双方都要有相应的控制. ...
- 第117天:Ajax实现省市区三级联动
Ajax实现省市区三级联动 思路: (1)首先获取省份信息 (2)发起Ajax请求,注意dataType中的T大写 (3)封装回调函数,回调函数success中用$.each循环每一条数据,动态创建o ...
- Contest 9
A:搜索好难啊根本不会啊. B:暴力枚举给哪段前缀乘,维护一些前后缀最大最小值之类的东西就很好算了. #include<iostream> #include<cstdio> # ...
- static变量的特点 - 只会有一份成员对象
1. public class HasStatic{ 2. private static int x=100; 3. public static void main(String ...
- 关于qt中的tr()函数
关于qt中的tr()函数 在论坛中漂,经常遇到有人遇到tr相关的问题.用tr的有两类人: (1)因为发现中文老出问题,然后搜索,发现很多人用tr,于是他也开始用tr (2)另一类人,确实是出于国际化的 ...
- Android开发技术重要参考资料
只言片语 有的时候看不懂别人的代码,觉得自己笨:其实,你想多了,看不懂不是因为你蠢而是别人的代码写得烂:所以,别那么宽容别人却苛责自己. 参考资料 郭霖 way 爱哥 有心 胡凯 robin trin ...
- [模板]2-SAT 问题&和平委员会
tarjan的运用 this is a problem:link 2-SAT处理的是什么 首先,把「2」和「SAT」拆开.SAT 是 Satisfiability 的缩写,意为可满足性.即一串布尔变量 ...