iPhone静态库学习笔记

 

一.基本知识

在实际的编程过程中,通常会把一些公用函数制成函数库,供其它程序使用,一则提搞了代码的复用;二则提搞了核心技术的保密程度。所以在实际的项目开发中,经常会使用到函数库,函数库分为静态库和动态库两种。和多数人所熟悉的动态语言和静态语言一样,这里的所谓静态和动态是相对编译期和运行期的:静态库在程序编译时会被链接到目标代码中,程序运行时将不再需要改静态库;而动态库在程序编译时并不会被链接到目标代码中,只是在程序运行时才被载入,因为在程序运行期间还需要动态库的存在。

对iPhone平台来说,iPhone官方只支持静态库联编,因此下面就介绍下iPhone中静态库的用法。

二.iPhone静态库使用

1.创建静态库

打开XCode新建一个项目,选择Library下的 “Cocoa Touch Static Library”,在Classes文件夹上点右键选择“New File…”,然后在“Cocoa Touch Class”下选择“Objective-C class”,这样就可以创建Objective-C风格的源文件和头文件。

同样,也可以创建C或者C++风格的代码,在Classes文件夹上点右键,选择“New File…”,这次选择Mac OS X下的“C and C++”,就行。

然后在文件里编写具体的调用代码。

最后进行编译,就会产生一个以.a为结尾的文件,就是我们需要的静态库。同时我们也需要生成的.h头文件。

2.使用静态库

在需要调用静态库的工程的目录下通过右键点 Frameworks->Add->Existing Files..添加之前创建的.a静态库文件,然后在需要调用静态库的函数的.h文件里,import进来和静态库中.m对应的.h头文件,并且声明静态库里的类:@class 类名,这样就可以使用静态库里的函数了。

3.联调静态库

如果单单以copy的方式包含进.a静态库,这样只能使用静态库,如果需要修改静态库里的函数,则需重新生成静态库,并将其重新包含进来,在开发阶段会显得比较麻烦。可以采用Xcode的Cross-Project Reference(跨项目参考)的方式解决。

首先把静态库的XCode项目整个包含进我们的当前项目(注意:不要选择Copy items to destination group's folder选项)。

接着和第二步一样也是包含进.a静态库(也要注意:不要选择Copy items to destination group's folder选项)。

这样就可以从我们当前的项目里直接打开静态库的项目,直接修改(注意:修改后编译前必须选择clean,清除原有的静态库,重新生成)。

参考资料:http://www.xuanyusong.com/archives/606
xcode如何使用静态库 首先下将自己要用到的Frameworks(library)文件拷贝到工程中(一般是直接放入工程文件夹的根目录) 立即下载

相关推荐

objective-c调用静态库

一.基本知识 在实际的编程过程中,通常会把一些公用函数制成函数库,供其它程序使用,一则提搞了代码的复用;二则提搞了核心技术的保密程度。所以在实际的项目开发中,经常会使用到函数库,函数库分为静态库和动态库两种。和多数人所熟悉的动态语言和静态语言一样,这里的所谓静态和动态是相对编译期和运行期的:静态库在程序编译时会被链接到目标代码中,程序运行时将不再需要改静态库;而动态库在程序编译时并不会被链接...

hjk768的专栏 290

EDEM在农业机械设计中的实战应用:以谷物收割机优化为例

本文以谷物收割机优化为例,详细阐述了EDEM离散元仿真软件在农业机械设计中的实战应用。通过构建精准的“数字谷物”模型与农机部件动态界面,利用GPU加速完成大规模颗粒系统仿真,有效诊断并解决了籽粒夹带损失与清选负荷不均等田间难题,实现了从仿真分析到田间验证的设计优化闭环。

weixin_29256771的博客 109

iOS开发中静态库之嵌套到Framework使用篇

framework嵌套.a静态库

JH_Cao的博客 1661

带硬约束的物理信息神经网络(PINN with Hard Constraint)示例及代码

本文以一个案例介绍了带硬约束的物理信息神经网络的原理及实现步骤。

m0_72768523的博客 5357

Appsflyer Web2App实战指南:OneLink与Web SDK深度对比

本文深入对比了Appsflyer实现Web2App的两大核心工具:OneLink智能链接与Web SDK。OneLink提供开箱即用的智能跳转,部署快捷,适合快速推广;Web SDK则支持高度自定义的用户行为追踪,适合深度分析与精细化运营。文章提供了详细的配置指南、场景化选型建议及实战避坑技巧,帮助营销与开发团队根据自身需求选择最佳方案,有效提升从网页到应用的转化率与归因精度。

weixin_29213655的博客 458

Objective-C库文件使用小记

静态库 VS 动态库 静态库:静态库在Objective-C里面以.a或者.framework作为后缀,目前开发者自己创建的库文件(Framework)其实都是以静态库的形式链接到执行文件的。链接时完整的拷贝到了可执行文件中,被多次使用就会有多份拷贝(eg:iOS8+的Extention中使用)。静态库文件一般都会比较大,因为所有要使用的数据都会被编译进去,而且如果库文件的某个函数改

huangmindong的专栏 486

地质建模师必备:用Petrel快速生成浅地层TST/TVT厚度图的5个关键步骤

本文详细解析了地质建模师如何利用Petrel平台,将二维浅地层SEG-Y数据高效转化为真实地层厚度图(TST)和真实垂直厚度图(TVT)。文章系统梳理了从数据规范化导入、坐标系统一、地质界面解释到厚度计算与成图的5个关键实战步骤,并强调了误差控制与工程应用,为海上风电等工程地质评估提供了完整解决方案。

weixin_29204205的博客 518

Objective-C 静态库调用解析

Objective-C 调用静态库解析,介绍 iPhone 中静态库的用法,静态库在程序编译时会被链接到目标代码中,程序运行时将不再需要改静态库;而动态库在程序编译时并不会被链接到目标代码中,只是在程序运行时才被载入,因为在程序运行期间还需要动态库的存在。objective-c 语法,objective-c 静态,objective-c 调用静态库,iphone 静态库。 在实际的编程过程中

think12的专栏 3051

中国国家级地面气象站基本气象要素日值数据集(V3.0)

气温数据TEM, 包括站点编号(sid), 纬度(lat), 经度(long), 高程(elev), 年(year), 月(month),日(day), 平均气温(tmean), 最高气温(tmax), 最低气温(tmin)气压数据PRS, 包括站点编号(sid), 纬度(lat), 经度(long), 高程(elev), 年(year), 月(month),日(day), 平均气压(pmean), 最高气压(pmax), 最低气压(pmin)中国国家级地面气象站基本气象要素日值数据集(V3.0)

J_Giser的博客 3898

自动驾驶---Planning模块详细介绍(以Apollo为例)

主要介绍高速场景下Planning模块,至于低速的泊车场景对比高速场景或者城区场景有比较大的差距(后面也会介绍泊车场景),本篇Planning介绍主要包括三大子模块Routing,Behavioural Planning以及Motion Planining,并且对比较重要的Decider和Optimizer都做了通俗化的说明供大家思考,以便于后续理解更深入的内容,后面有时间会再开一些篇幅对这些模块进行更加深入的讲解。

智能汽车人的博客 2087

iPhone入门学习——iPhone静态库学习笔记

一.基本知识 在实际的编程过程中,通常会把一些公用函数制成函数库,供其它程序使用,一则提搞了代码的复用;二则提搞了核心技术的保密程度。所以在实际的项目开发中,经常会使用到函数库,函数库分为静态库和动态库两种。和多数人所熟悉的动态语言和静态语言一样,这里的所谓静态和动态是相对编译期和运行期的:静态库在程序编译时会被链接到目标代码中,程序运行时将不再需要改静态库;而动态库在程序编译时并不会被链接

计算机学习园 921

美团mtgsig 1.2算法分析

mtgsig1.2的一些算法总结

记录一些web逆向的过程 3502

iPhone静态库学习笔记 新手须知

iPhone静态库学习笔记 新手须知是本文要介绍的内容,我们先来看具体内容。对iPhone平台来说,iPhone官方只支持静态库联编,因此下面就介绍下iPhone中静态库的用法。 一.基本知识 在实际的编程过程中,通常会把一些公用函数制成函数库,供其它程序使用,一则提

vienna_zj的专栏 706

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

iPhone入门学习系列教程

iPhone入门学习——TTS使用文档 iPhone入门学习——CoverFlow效果例子 iPhone入门学习——iPhone单元测试方法学习笔记 iPhone入门学习——iPhoneWeb开发学习笔记 Phone入门学习...

weixin_34256074的博客 77

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

深入理解iPhone静态库

深入理解iPhone静态库(手把手教你iphone开发 - 基础篇)作者:孙东风 2009-11-20(请尊重作者劳动成果,转载务必注明出处) 在实际的编程过程中,通常会把一些公用函数制成函数库,供其它程序使用,一则提搞了代码的复用;二则提搞了核心技术的保密程度。所以在实际的项目开发中,经常会使用到函数库,函数库分为静态库和动态库两种。和多数人所熟悉的动态语言和静态语言一样,这里的所谓

大道至简 1万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

iPhone 项目使用静态库(xcode使用)

转自iPhoneGeek原文链接 由于Apple禁止在iPhone中使用外部框架或动态链接库,所以要重用代码(第三方库或自己的代码)只能选择如下方法: 直接将代码加入项目。这种方法有点笨。例如,你的一段代码被五个项目共享,如果你发现一个小bug,那么你需要更改五个地方。够麻烦吧? 使用静态库。这是我经常使用的方法。但Xcode并未为iPhone提供静态库的模板。有两种解...

diezhi9415的博客 111
上一篇: iOS单元测试
下一篇: 如何使用AV Foundation从摄像头将视频帧捕获为图像
iteye_3205
博客等级 码龄8年 0粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值