一、静态库创建

打开Xcode, 选择File ----> New ---> Project  选择iOS ----> Framework & Library ---> Cocoa Touch Framework。

点击Next ,按照流程一步一步的创建yooweiSDK,最后选择存放的位置即可。

主要过程可以参考我前面的有关文章:http://www.cnblogs.com/richard-youth/p/4988125.html

注意设置:

1、将Build Active Architecture Only 设置为NO 

2、TARGETS (yooweiSDK) - Build Settings-Mach -O-type 将其设置成静态库 Static Library  

3、调整最低支持的iOS系统

4、TARGETS (yooweiSDK) - Build Settings-Architectures 增加armv7s。 如果你用的真机是iPhone5 C,生成的Framework不支持armv7s,默认的Architectures不包含armv7s。 所以要在Architectures下增加armv7s,并选中。

5、如果 SDK 有用到 Category,注意项目设置 Other Linker Flags 添加 -ObjC

6、TARGETS (yooweiSDK) - Build Settings-ENABLE_BITCODE 设置为NO . 否则真机上跑会报ld: -bundle and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together

二、静态库生成

1、创建完静态库的空壳后,我们开始创建所需要的类,拖进用到的资源文件和第三方的开源库以及SDK。如下图所示:

需要注意的是:所有第三方公共使用的库和SDK不能添加到target里面

2、创建资源包yooweiResource.bundle

我们采用在同一个project 里面创建新的target,如图

切换scheme 然后运行,分别可以得到静态库和bundle 资源文件

三:在demo中使用静态库

分别将生成的静态库和资源包文件,以及必要的第三方库和SDK添加到demo里面

在使用的时候,遇到几个问题,记录下来:

1、在制作静态库的时候需要设置ENABLE_BITCODE 为 NO ,demo 工程里面也要设置为NO

2、制作静态库的时候,必要的文件没有添加到target里面,导致这些在demo中找不到文件。

以上为详细记录静态库创建、bundle资源包创建,以及引用第三方的SDK和开源库的一个流程。

注意:静态库文件里面的可以修改,但是在真正使用的地方,还是原来的,不会生效,所以不能在静态库里面直接改掉(经验)。

iOS 静态库生成(引用第三方SDK、开源库、资源包)的更多相关文章

  1. PHP系列 | ThinkPHP5.1 如何自动加载第三方SDK(非composer包 )

    注意:这里只是针对于非Composer 安装包的自动加载的实现,能用composer安装的自动跳过. 由于ThinkPHP5.1 严格遵循PSR-4规范,不再建议手动导入类库文件,所以新版取消了Loa ...

  2. Xamarin.ios引用第三方SDK

    引言 诚然,Xamarin是个优秀的跨平台解决方案,但毕竟还是不能将Native中所有的方法都直接实现.诸如各种第三方库,也都只有java/oc原生版本的SDK,无法直接拿过来直接使用.但,不能直接拿 ...

  3. 汇总iOS开发中需要用到的开源库

    来源:http://mobile.51cto.com/hot-431256.htm 1.iOS &iPhone 网络异步加载 asi-http-request [1-1 ASI HTTP 下载 ...

  4. 安卓离线SDK Windows版 资源包下载地址全集

    1.Tools    https://dl-ssl.google.com/android/repository/platform-tools_r19.0.1-windows.zip https://d ...

  5. Android Studio 简介及导入 jar 包和第三方开源库方[转]

    原文:http://blog.sina.com.cn/s/blog_693301190102v6au.html Android Studio 简介 几天前的晚上突然又想使用 Android Studi ...

  6. 粉笔网iPhone端使用的第三方开源库

    粉笔网iPhone端使用的第三方开源库 前言 最近有朋友问我粉笔网 iPhone 端使用了哪些第三方的开源库.我在这儿整理了一下,分享给大家. ASIHttpRequest ASIHttpReques ...

  7. CocoaPods:管理Objective-c 程序中各种第三方开源库关联

    在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中. 但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦.有没有什么办法可以简化对第三方库的 ...

  8. (转)CocoaPods:管理Objective-c 程序中各种第三方开源库关联

    在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中. 但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦.有没有什么办法可以简化对第三方库的 ...

  9. unity 引入 ios 第三方sdk

    原地址:http://blog.csdn.net/u012085988/article/details/17785023 unity开发中ios应用时,要想成功引入第三方sdk,首先得知道c#与obj ...

随机推荐

  1. CSU 1547: Rectangle (思维题加一点01背包)

    1547: Rectangle Submit Page    Summary    Time Limit: 1 Sec     Memory Limit: 256 Mb     Submitted: ...

  2. Python的 GUI 框架

    Python的 GUI 框架 Tkinter Python内嵌的gui环境,使用TCL实现,python IDLE由Tkinter实现 历史悠久,perl中有对应的perlTk.Python标准安装包 ...

  3. Rendering Engine 主流的浏览器内核(排版引擎、渲染引擎、解释引擎)有哪几种,分别的特点

    一.A web browser engine A rendering engine is software that draws text and images on the screen. The ...

  4. 【OC底层】AssociatedObject 关联对象

    如何实现给分类“添加成员变量”? 默认情况下,因为分类底层结构的限制,不能添加成员变量到分类中.但可以通过关联对象来间接实现 关联对象提供了以下API 1> 添加关联对象 void objc_s ...

  5. Scala 方法和函数

    package com.bigdata // /** Scala 方法和函数:Scala中既有函数也有方法,大多数情况下我们都可以不去理会他们之间的区别. * * 方法:Scala 中的方法跟 Jav ...

  6. angularjs animation

    http://augus.github.io/ngAnimate/ http://www.nganimate.org/angularjs/ng-repeat/move http://codepen.i ...

  7. 使用bootstrap-select控件 搜索栏键入关键字动态获取后台数据

    bootstrap-select开源地址:https://github.com/silviomoreto/bootstrap-select bootstrap-select使用示例:http://si ...

  8. CF 1138 E. Museums Tour

    E. Museums Tour 链接 分析: 按时间建出分层图,每个点形如(u,t),表示u在在t个时刻的点,tarjan缩点.每个强连通分量中的点都能经过,然后DAG上dp. 代码: #includ ...

  9. 4569: [Scoi2016]萌萌哒

    4569: [Scoi2016]萌萌哒 链接 分析: 每次给出的两个区间长度是一样的,对应位置的数字也是一样的,那么可以将两两对应的数字用并查集合并,设最后有$cnt$个不同的集合,答案就是$9\ti ...

  10. CF1111E Tree 树链剖分,DP

    CF1111E Tree 过年了,洛咕还没爬这次的题,先放个CF的链接吧. 补个LG传送门. 对于每个询问点\(x\),设它的祖先即不能和它放在同一个集合中的点的个数为\(f[x]\),设\(dp[i ...