IOS 在Xcode 4.x以上添加静态库
参考网站:http://my.oschina.net/edwardlau/blog/95924
常用的代码可以通过静态库进行抽出来作为公共类方法,方便在其他地方调用,一般来说我们要准备2套静态库,一套是模拟器上使用的,一套是真机使用的,
创建静态库:
在Xcode中新建一个Project.选择如下图:
然后点next,下一步至于填写的东西随意.
创建完成后结构如下图:
未生成的静态库在Products下为红色,
然后随便在.h文件中写一个简单的方法sayHello;
代码如下:
1
2
3
4
5
6
7
|
#import <Foundation/Foundation.h> @interface TestStaticeLibrary : NSObject -( void )sayHello; @end |
.m文件内容:
1
2
3
4
5
6
7
8
|
#import "TestStaticeLibrary.h" @implementation TestStaticeLibrary -( void )sayHello{ NSLog(@ "Hello OSChina" ); } @end |
完成后点击schema如下图
点击:选择Edit Schema,如下图:
如果确定版本无多大问题的时候,把Builder Configuration 中debug模式改成Release即可.
选择生成对应的平台
由于模拟器是采用i386模式进行开发的如果要在模拟器中使用静态库的话需要把iOS Device改成iphone 6.0 Simulator.然后点击run,
然后点击选择project 找到对应的项目,如下图
点击小箭头后会跳转到指定的文件夹,然后选择build-->Products 会看到一个Debug-iphonesimulator的文件夹,这时候已经生成了对应的文件
调用静态库:
创建任意IOS project,把刚才生成的静态库直接拖到新的项目中,结构如下:
如果只是单单加入静态库是不够的,之前生成的还有一个文件夹include,里面还带了一个.h文件,把.h文件引入项目中,最终目录结构如下:
如果你不是直接拖入项目中的话可以,鼠标右键在项目中,选择ADD Files to "XXXX"
在ViewController 敲入如下代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#import "ViewController.h" #import "TestStaticeLibrary.h" @interface ViewController () @end @implementation ViewController - ( void )viewDidLoad { [super viewDidLoad]; TestStaticeLibrary *t = [[TestStaticeLibrary alloc] init]; [t sayHello]; // Do any additional setup after loading the view, typically from a nib. } - ( void )didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end |
然后运行项目 在控制台看到以下内容
这样已经完成了一个ios的静态库调用.
PS:引入项目后记得要检查一下该静态库是否存在Summary 下面:
如果发现不在的话,按+号把静态库添加进来
IOS 在Xcode 4.x以上添加静态库的更多相关文章
- Qt中添加静态库.lb,.a和动态库.dll,.so,头文件和.cpp文件
添加步骤 1.-Qt Creator中,"项目"------"添加库"2.把静态库和动态库文件放到项目文件夹中3.在.pro文件中会添加如下代码: - 添加动态 ...
- 【转】Xcode添加静态库以及编译选项配置常见问题
原文网址:http://www.cnblogs.com/Quains/p/3276425.html 一,Xcode编译出现Link错误,出现"duplicate symbols for ar ...
- Xcode添加静态库以及编译选项配置常见问题
一,Xcode编译出现Link错误,出现"duplicate symbols for architecture i386 clang"提示.问题:链接时,项目有重名文件.解决:根据 ...
- Xcode 创建.a和framework静态库(转载)
库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的静态库有 .a 和 .framework两种形式:动态库有.dylib 和 .framew ...
- 经验分享:Xcode 创建.a和framework静态库【转】
作者:Haley_Wong 最近因为项目中的聊天SDK,需要封装成静态库,所以实践了一下创建静态库的步骤,做下记录. 库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态 ...
- Xcode 创建.a和framework静态库
库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的静态库有 .a 和 .framework两种形式:动态库有.dylib 和 .framew ...
- 经验分享:Xcode 创建.a和framework静态库
最近因为项目中的聊天SDK,需要封装成静态库,所以实践了一下创建静态库的步骤,做下记录. 库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的 ...
- xcode编写c/c++静态库使用系统头文件问题
c/c++编写的静态库中有引用ios系统头文件比如: #include <EGL/egl.h> 在xcode编译的时候需要设置静态库程序: Build Settings-Header Se ...
- 使用 Xcode 5 生成和使用静态库
本文转载至 http://blog.csdn.net/qq331436155/article/details/18363267 静态库Static Libraryiosxcode 在项目中 ...
随机推荐
- 我的VSTO之路(五):Outlook初步开发之联系人扩展
原文:我的VSTO之路(五):Outlook初步开发之联系人扩展 上一讲我们完成对Word的介绍,文本开始,我将着重介绍Outlook.Outlook是微软Office中一个非常实用的工具,尤其在一个 ...
- java dump
注意,请不要被我误导,我没有看其他资料,这是我自己分析的,有些可能是不对的 "DestroyJavaVM" prio=6 tid=0x00316800 nid=0x448 wait ...
- struts2接收参数——域模型、DTO
在开始介绍域模型之前我们要明白一点,为什么通过域模型我们可以把参数这么方便的在后台接收. 那是因为 通过参数拦截器(params interceptor)自动的把前台传过来的参数给域对象(domain ...
- Linux2.6内核--内存管理(2)--区
由于硬件的限制,内核不能对所有的页一视同仁.有些页位于内存中的特定物理地址上,所以,不能将其用于一些特别的任务.(关于内存分页机制可以查看:http://blog.csdn.net/dlutbruce ...
- Java编译原理
http://wenku.baidu.com/view/f9b1734b87c24028915fc3a3.html Java编译原理 1. 关于动态加载机制 学习Java比C++更容易理解OOP的思想 ...
- 数据结构(线段树):HDU 5649 DZY Loves Sorting
DZY Loves Sorting Time Limit: 12000/6000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Oth ...
- 数学概念——G 最大公约数
G - 数论,最大公约数 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit ...
- 浅谈JavaScript函数
JavaScript作为一种基于对象(非严格面向对象)的语言,函数在JS中的地位非同一般:用函数声明类和对象.甚至函数本身也是对象. 一.函数的三种声明方式辨析. 1.function命令 funct ...
- 《A First Course in Probability》-chaper8-极限定理-切比雪夫不等式
基于对概率问题的抽象化,通过期望.方差.随机变量X及其概率,我们想要通过几个量推出另外几个量的特征,笼统的来说,极限定理起到的作用便在于此 切比雪夫不等式: 在证明切比雪夫不等式之前,我们先要完成对马 ...
- Power Calculus 快速幂计算 (IDA*/打表)
原题:1374 - Power Calculus 题意: 求最少用几次乘法或除法,可以从x得到x^n.(每次只能从已经得到的数字里选择两个进行操作) 举例: x^31可以通过最少6次操作得到(5次乘, ...