- 浏览: 611574 次
文章分类
最新评论
-
q781253433:
qin ~.求demo看看~
Android之Widget -
zhongyuanceshi:
博主,没看到你的例子的Demo,共享下
Android之Widget
程序编译一般需经预处理、编译、汇编和链接几个步骤。在我们的应用中,有一些公共代码是需要反复使用,就把这些代码编译为“库”文件;在链接步骤中,连接器将从库文件取得所需的代码,复制到生成的可执行文件中。这种库称为静态库,其特点是可执行文件中包含了库代码的一份完整拷贝;缺点就是被多次使用就会有多份冗余拷贝。
静态库和动态库是两种共享程序代码的方式,它们的区别是:静态库在程序的链接阶段被复制到了程序中,和程序运行的时候没有关系;动态库在链接阶段没有被复制到程序中,而是程序在运行时由系统动态加载到内存中供程序调用。使用动态库的优点是系统只需载入一次动态库,不同的程序可以得到内存中相同的动态库的复本,因此节省了很多内存。
原文:
http://blog.163.com/dang_wenyun/blog/static/42206525201161801232247/
概要
AppStore中的 iphone 程序不允许使用动态链接库。
如果需要在隐藏代码的前提下提供某些功能,可以使用静态链接库。
XCode项目中添加静态库的方法
右击target,选择add -> new target
在弹出的 NewTarget 界面中选择Cocoa Touch -> Static Library ,为新 library 取个名字。
将源文件添加到这个库。可以直接拖动现存源文件,也可以右击 -> add 。注意选择新建的库为添加的 target 。
设置原项目,令其使用新建的库。
右击原项目的 target ,选择 getInfo 。
选择 General 选项卡
向 linked libraries 中添加新创建的库 (即添加 .a 文件)。
编译新建的静态库以产生 .a 文件。(右击静态库的 target ,选择build)
编译原项目,若可以调用静态库中的方法则添加成功。
怎样隐藏静态库的代码
可以直接删除静态库中的源代码,只提交链接库文件(.a),这样原项目仍然可以编译执行。
备注:
Mac OS 下的静态链接库文件与linux 同样使用 .a 扩展名。
参考资料
Building static libraries with the iPhone SDK
发表评论
-
tableview FPS 优化
2016-06-28 11:26 1现状: 在滚动tableview ... -
iOS 开发者中的公司账号与个人账号之间有什么区别?
2016-06-23 14:54 463原文:http://www.zhihu.com/questio ... -
strong weak copy
2016-04-24 21:01 592copy的使用 如果是mutable,则co ... -
App性能优化思考
2015-10-13 15:24 871一个app的数据 启动时间 crash率 每个 ... -
iOS之手势操作
2015-01-19 10:24 746手势学习: https://developer. ... -
iOS之网络学习
2015-01-19 10:23 609网络学习: http://nshipster.c ... -
nib文件的加载过程
2014-10-24 13:39 726参考:http://blog.csdn.net/nokiax ... -
NSCoder&&NSCoding使用
2014-10-24 11:38 730NScoder和NScoding的作用是将自定义的类的对象持 ... -
Autolayout学习
2014-10-20 16:32 697参考: http://my.oschina. ... -
IOS开发屏幕适配总结
2014-10-20 16:28 411面对4个分辨率的iPhone,建议使用Auto Layou ... -
Size Classes学习
2014-10-20 16:27 727Size Classes介绍:http://blog.su ... -
iPhone6分辨率以及适配
2014-10-20 11:36 1273对iPhone6适配的两种方式:1、兼容模式 这种模式 ... -
Core Animation简介
2014-10-19 15:33 744在iOS中,整个view都是直接构建在Core Animat ... -
Charles使用——HTTP代理服务器
2014-10-19 15:32 2002* HTTP代理服务器,监听8888端口 * HTTP监视 ... -
《精选》开发中遇到的问题总结
2014-10-19 15:31 9741、新浪微博的使用 使用的事umeng的SDK来调用微信、 ... -
使用JavaScript给UIWebView中的内容注入CSS
2014-10-06 21:26 1111NSString *filePath = [[NSB ... -
UIViewde的属性edgesForExtendedLayout
2014-09-26 17:56 658edgesForExtendedLayout 指定边缘 ... -
UIView的属性autoresizingMask
2014-09-26 17:36 726在 UIView 中有一个autoresizingMask ... -
UIWebView获取内容的高度
2014-09-24 13:13 705// 第一种方法 ... -
storyboard的总结
2014-09-02 11:30 690两个基本概念 scene 就是一个视图控制器 se ...
相关推荐
创建静态库是在项目中重用代码的好方法,但是使用Xcode 4,如果您不知道要设置它的以下步骤,则可能很难设置。 而且,如果您的静态库定义了动态的类别,则需要采取额外的步骤来确保您的实现链接所有内容,以便在运行...
第1章 欢迎来到iPhone的世界 1.1 关于本书 1.2 必要条件 1.3 必备知识 1.4 编写iPhone应用程序有何不同 1.4.1 只有一个正在运行... 第16章 iPhone照相机和照片库 第17章 应用程序本地化 第18章 未来之路
支持: 如果您想提出任何问题,请随时打开一个问题将 OSMlib 添加到您的项目中OSMlib 是一个编译好的静态库。 克隆 OSMlib 存储库: git clone git://github.com/deralexxx/OSMlib.git将 OSMlib 放在一个永久文件夹...
2.1 在Xcode中设置项目 8 2.2 Interface Builder简介 13 2.2.1 nib文件的构成 14 2.2.2 在视图中添加标签 15 2.3 美化iPhone应用程序 17 2.4 小结 20 第3章 处理基本交互 21 3.1 MVC范型 21 3.2 创建项目 22 3.3 ...
6. [face_recognition](https://github.com/ageitgey/face_recognition) 人脸识别python库,可以从照片中识别人脸 安装教程 1. 运行app 配置app.py中redis和mongodb的地址和端口 ```shell python app.py ```...
概述该存储库包含各种预先编译为静态库且可立即用于OS X(i386,x86_64)和iOS(armv7,armv7s)的开源库。 还提供了构建脚本。 (*) (具有PNG和JPEG支持) (默认线程模式设置为多线程,即SQLITE_THREADSAFE = 2...
蚊子这是一个 XCode 项目骨架结构,可用于构建用于 Mac 和 iPhone 项目的静态 libmosquitto.a 库。 从这些来源构建: : 用法使用 XCode 构建,目标 -> UniversalLib - (void) mqttInit:(NSString *)host withPort:...
2、升级到pjsip2.4全平台静态库 3、Architectures由32位改为了Standard architectures(arm7,arm64),现在的app store都要支持arm64才能上传 4、补充最近通话记录图标 5、pjsip引用简化,直接将所有头文件都整合到一...
2、升级到pjsip2.4全平台静态库 3、Architectures由32位改为了Standard architectures(arm7,arm64),现在的app store都要支持arm64才能上传 4、补充最近通话记录图标 5、pjsip引用简化,直接将所有头文件都整合到一...
功能特性1:开源全部代码,未内置任何静态库或者框架2:纯OC实现RTMP推流端协议内容3:AAC音频编码,iphone6s以上采用48k音频采样,iphone6s以下设备采用44k音频采样4:H.264视频编码,iOS8以下软编,iOS8以上硬编5...
有时候,我们希望通过命令行来编译xcode工程,我们可以直接用xcodebuild来编译,之后再到编译路径下拷贝打包成ipa或者是要包含各种cpu架构的静态库或framework,就显得非常非常麻烦,有没有一步到位的方法呢?...
支持编译c/c /objc成静态库、动态库、命令行可执行程序(后续还会增加:mac、ios、android的app的生成规则) 提供丰富的工程描述api,使用简单灵活,例如添加编译文件只需(还支持过滤排除): add_...
支持静态库方式启动analyzer: PerformanceAnalyzer 在iOS平台下,分析器是统计CPU,FPS,内存,加载时间并提供统计数据输出的工具。 并包含基于FMDatabaseSQL执行时间监视器和主线程监视器中的UI刷新 前言 由于...
此脚本可以为 libidn 构建 iOS 胖静态库,您可以在第 37 行启用或禁用架构,ARCHS="i386 x86_64 armv7 armv7s arm64" 此构建脚本适用于 iOS7 sdk 和 iPhone 5S 的 arm64 架构。 OPENSSL 构建脚本 添加了最初在找到...
打开下载的JS包里的iOS/ShareSDKForJS/ShareSDKForJS.xcodeproj项目工程,选择ShareSDKForJS静态库运行Xcode,如图: 700px-js_doc_001.png 运行成功之后,请大家打开文件找到Build文件夹,然后进入文件中找到...
在Xcode中构建可立即使用的Objective-C静态库和标头 运行JUnit测试的翻译版本,以确保您的代码以Objective-C形式工作 处理多个Java项目,外部Java库[1]和您要链接的现有Objective-C代码 使用CocoaPods(可选)将...
这个项目完全按照高访问量互联网站进行设计,通过这个项目,学员不仅可以在实战中巩固对前面学习的ASP.Net、ADO.Net、WinForm等知识的掌握,还可以掌握网站防黑、缓存、SEO、静态化、搜索引擎技术、AJAX等大型互联网...
该库与创建UITableViewCell的所有不同方式兼容:系统预定义样式,以编程方式创建的单元格,从xib加载的单元格和情节提要中的原型单元格。 您可以根据需要使用自动布局。 适用于iOS> = 5.0。 在iPhone和iPad上的...