iOS 优化内存(七)开发中使用第三方类库

在iOS中使用第三方类库

方法一:直接复制所有源文件到项目中

这种方法就是把第三方类库的所有源文件复制到项目中,直接把所有.h和.m文件拖到XCode项目中即可。如果第三方类库引用了一些系统自带类库,那么在项目中还需要额外引用那些类库。

如果当前的项目启用了ARC,而引用的第三方类库未使用ARC,那还需要在项目信息的Targets – Build Parses里找到第三方类库的.m文件,并为它们加上-fno-objc-arc标记。

而对于在未启用ARC的项目用引用使用了ARC的第三方类库,则需要为第三方类库的.m文件加上-fobjc-arc标记。

另外,在源代码中可以通过一个编译器指令__has_feature(objc_arc)来检测项目是否使用了ARC,具体见http://clang.llvm.org/docs/LanguageExtensions.html#langext-has-feature-has-extension

方法二:引用.xcodeproj生成静态链接库并引用

首先,在XCode中把第三方类库的.xcodeproj文件拖到当前项目中;如果第三方类库封装了一些资源在.bundle文件里,那么.bundle文件需要和.xcodeproj一起拖到项目中。

然后,在项目的Targets – Summary – Linked Frameworks and Libraries或者在Targets – Build Phases – Link Binary With Libraries添加第三方类库生成的静态链接库引用。

接着,还需要在Targets – Build Settings – Search Paths的User Header Search Paths参数中加入第三方类库的头文件路径,可以是绝对路径如:/Users/libpath,也可以是相对路径(相对于当前项目文件夹)如:../**。

最后,有些静态链接库引用进来可能还需要增加一些标记,在Targets – Build Settings – Linking的Other Linker Flags参数中增加:-Objc, –all_load这一类标记。

通过以上几步,一般都可以成功编译。

当然还有一些例外的情况:

  1. 当前项目和第三方类库同时使用了另外的一些第三方类库,这个时候还需要额外做一些处理才能成功编译:在引用的第三方类库的.xcodeproj项目 – Targets – Build Phases中的Compile SourcesCopy Headers把重复的.m和.h文件移除掉。
  2. 第三方类库引用的一些系统自带类库,如果项目中没有引用,也可能会引起编译错误,这时还需要在项目中引用第三方类库引用的一些系统自带类库。比如:第三方类库引用了QuartzCore.framework,而项目中未引用QuartzCore.framework则可能引起编译错误,就需要在项目中也引用QuartzCore.framework。
  3. 本篇针对Xcode6.0以前!
时间: 2024-10-29 00:14:18

iOS 优化内存(七)开发中使用第三方类库的相关文章

iOS 优化内存(六)开发必不可少的75个工具

iOS 开发者必不可少的 75 个工具 如果你去到一位熟练的木匠的工作室,你总是能发现他/她有一堆工具来完成不同的任务. 软件开发同样如此.你可以从软件开发者如何使用工具中看出他水准如何.有经验的开发者精于使用工具.对你目前所使用的工具不断研究,同时了解一些替代品的使用,当你目前所用的工具无法满足你的需要时可以填补空缺. 记住了这些,我将向你展示一份关于各种工具的长长的列表.其中一些我每天都用,其他的我看情况使用.如果你还有更多的工具想展示在这个列表里,可以跟我留言哦亲. 我尽我所能给列表分分类

iOS 优化内存(五)开发流程总结

iOS开发流程总结 流程:注册.开发.真机测试.发布以及上线. iPhone iOS 4从注册到app上线开发流程 一.关于注册账号IDP和Apple ID: 1.注册App ID(无论是iOS使用者还是开发者都需要*****ID,只是后者还需要付99$注册成为开发者.) 网址:http://developer.apple.com 由于上边的网址没有注册按钮,所以去iTunes注册,方法参照(这里注册的是免费的,您需要注册付费的): http://jingyan.baidu.com/articl

iOS开发中的第三方类库管理工具-CocoaPods-

转载请注明出处 : http://blog.csdn.net/whjForWork/article/details/44967891 CocoaPods是什么? 当iOS 项目中需要使用第三方开源类库时,或者已使用的类库需要更新时,再去一个个重新下载非常麻烦,但是通过CocoaPods,我们可以一行命令就解决这个问题 CocoaPods是一个负责管理iOS项目中第三方开源代码的工具,Cocoa使用Ruby开发,其源码在Github上开源https://github.com/CocoaPods/C

iOS开发中常用第三方库的使用和配置-GDataXML

这篇文章旨在给自己以后需要时能及时的查到,省得每次都去baidu. 1. xml解析库-GDataXML 参考文章:http://blog.csdn.net/tangren03/article/details/7868246 GDataXML下载地址: (1)GDataXML.h/m文件 http://code.google.com/p/gdata-objectivec-client/source/browse/trunk/Source/XMLSupport/ (2)DGataDefines.h

XCode和Cocoa在开发中使用第三方dylib示例

XCode和Cocoa在开发中使用第三方dylib示例 www.educity.cn   发布者:yukowang   来源:网络转载   发布日期:2014年06月13日 XCode和Cocoa在开发中使用第三方dylib示例是本文要介绍对内容,所谓dylib,就是bsd风格的动态库.基本可以认为等价于windows的dll和linux的so.mac基于bsd,所以也使用的是 dylib. 如果你需要引用一个第三方的dylib,在xcode下编译出cocoa程序,在本机上运行是不会出问题的.但

iOS优化内存方法推荐

1. 用ARC管理内存 ARC(Automatic ReferenceCounting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露.它自动为你管理retain和release的过程,所以你就不必去手动干预了.忘掉代码段结尾的release简直像记得吃饭一样简单.而ARC会自动在底层为你做这些工作.除了帮你避免内存泄露,ARC还可以帮你提高性能,它能保证释放掉不再需要的对象的内存. 2. 在正确的地方使用 reuseIdentifier 一

【转】iOS开发常用的第三方类库

原文: http://blog.csdn.net/xiazailushang/article/details/9716043 在iOS开发中不可避免的会用到一些第三方类库,它们提供了很多实用的功能,使我们的开发变得更有效率:同时,也可以从它们的源代码中学习到很多有用的东西. Reachability 检测网络连接 用来检查网络连接是否可用:包括WIFI和WWAN(3G/EDGE/CDMA等)两种工作模式. 可以从Apple网站下载到:http://developer.apple.com/libr

iOS开发之 用第三方类库实现轮播图

在github上面有很多的第三方类库,大大节约了大家的开发时间 下载地址:https://github.com/gsdios/SDCycleScrollView 现已支持cocoapods导入:pod 'SDCycleScrollView','~> 1.61' 效果 具体实现代码 #import "ViewController.h" #import "SDCycleScrollView.h" @interface ViewController () <S

使用cocoapods来管理IOS工程中的第三方类库

cocoapods是非常优秀的IOS包管理工具,用来管理第三方组件, 完美解决第三方类库库更新, 相互间依赖等关系. 参考cocoapods主页. 安装 一般换成国内的source会比较方便. sudo gem install cocoapods //会被墙掉. gem sources --remove https://rubygems.org/ gem sources -a http://ruby.taobao.org/ gem sources -l sudo gem install coco