iOS : 静态库(.framework)合并
如果写了一个Framework,根据Build时选择的机器类型,会分为模拟器Framework和真机Framework,两者是不能混用的。
此时可以通过配置一个Run Script,在Script中使用lipo命令来合并两个版本的Framework,重新生成一个新的Framework,这个Framework将同时支持在模拟器和真机上运行。
在项目的Build Phases中,新建一个Run Script,输入下面内容:
if [ "${ACTION}" = "build" ] then INSTALL_DIR=${SRCROOT}/Products/${PROJECT_NAME}.frameworkDEVICE_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphoneos/${PROJECT_NAME}.frameworkSIMULATOR_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphonesimulator/${PROJECT_NAME}.frameworkif [ -d "${INSTALL_DIR}" ] then rm -rf "${INSTALL_DIR}" fimkdir -p "${INSTALL_DIR}"cp -R "${DEVICE_DIR}/" "${INSTALL_DIR}/" #ditto "${DEVICE_DIR}/Headers" "${INSTALL_DIR}/Headers"lipo -create "${DEVICE_DIR}/${PROJECT_NAME}" "${SIMULATOR_DIR}/${PROJECT_NAME}" -output "${INSTALL_DIR}/${PROJECT_NAME}"#open "${DEVICE_DIR}" #open "${SRCROOT}/Products" fi
当项目再次Build时,就会在项目目录下面出现Products目录,里面包含了合并后的Framework文件夹。
使用lipo -info来检测下:
lipo -info 二进制文件路径(拖进来即可)
如果出现 :
x86_64 armv7 arm64
说明成功了!!!
阅读: http://devonios.com/xcode-lipo-framework.html
转载于:https://www.cnblogs.com/KeenLeung/p/5491332.html
iOS : 静态库(.framework)合并相关推荐
- ios 静态库合成_iOS : 静态库(.framework)合并
如果写了一个Framework,根据Build时选择的机器类型,会分为模拟器Framework和真机Framework,两者是不能混用的. 此时可以通过配置一个Run Script,在Script中使 ...
- iOS架构-静态库.framework脚本化打包补充(5)
静态库.framework脚本化打包打包已经在iOS架构-静态库.framework手动打包及脚本化打包(5)中讲过.这里补充是通过Xcode 配置Aggregate自动执行脚本打包Framework ...
- iOS架构-静态库.framework(引用第三方SDK、开源库、资源包)(9)
前面介绍了 静态库.a依赖第三方静态库.a的制作 静态库.framework之依赖第三方库(Cocoapods进行管理) 今天课题: 静态库.framework(引用第三方SDK.framework. ...
- iOS架构-静态库.framework之依赖第三方库(7)
需求分析: 把自己的能力封装成静态库提供给客户使用,但是有些工作市场上已经有很好的公开的代码,或者成本很低的解决方案,我们就可以使用别人公开的.或者低成本采购的技术来为我们服务.制作静态库也是 ...
- iOS架构-静态库.framework之资源文件打包bundle(6)
iOS架构-静态库.framework手动打包及脚本化打包(5)中介绍了.framework的脚本化打包,虽然在iOS架构-静态库.a打包之资源文件打包成bundle(4)中已经演示过,其实是一样的. ...
- iOS 静态库和动态库的基本介绍和使用
为什么80%的码农都做不了架构师?>>> 什么是库 ? 库就是程序代码的集合,将N个文件组织起来,是共享程序代码的一种方式. 库的分类 开源库:源代码是公开的,可以看到每个实现 ...
- iOS静态库和动态库
iOS静态库和动态库 静态库和动态库是什么,以及它们的区别,详细介绍可参考博文:iOS里的动态库和静态库,里面讲的很详细. 静态库动态库的区别 内容来源自:iOS动态库与静态库 静态库和动态库是相对编 ...
- ios 静态库冲突的解决办法
参考:http://www.cnblogs.com/machao/p/5288460.html ios 静态库冲突的解决办法 最近在做一个 iOS 的 cocos2d-x 项目接入新浪微博 SDK 的 ...
- ios静态库和代码同名_使用一个代码库开始制作NativeScript iOS和Android应用程序
ios静态库和代码同名 Users can choose whatever operating system they prefer, but every operating system use d ...
最新文章
- QML基本可视化元素--Text
- android广告平台刷量,数据显示:Android平台广告营收首超iOS
- 一些SAP C/4HANA和S/4HANA同步的测试数据,用于测试目的
- no java virtual machine was found after searching Failed to load the JNI shared library
- windows server 触屏_宜昌触屏万能蒸烤箱价格-华春新能源有限公司
- SkyEye携手Simulink实现全数字协同仿真
- ios FMDB 更新二进制图片数据
- javascript 权威指南二
- jpg格式怎么免费压缩大小
- 用gambit学博弈论---零和博弈
- 怎样修改证件照的尺寸大小,让照片符合报名要求
- 生产排程系统_APS(高级计划排产)系统该如何选型,主要从哪些方面考虑?
- 无法听到计算机发出的声音怎么办,qq语音听不到对方的声音怎么办_电脑qq语音我听不到对方声音修复方法-win7之家...
- 米家接入HomeKit系列二:通过群辉NAS的Docker搭建HomeAssistant
- 潘多拉盒子安装aria2命令
- python 使用smtp发送群邮件
- 牛客小白月赛4 I.合唱队形
- 凝血酶分子机器人_DNA折纸(DNA Origami)技术搭载凝血酶分子阻断肿瘤供血
- 树莓派 pi zero 上网记
- 前后端部署在两台服务器 服务器配置要求_云海容错服务器经销商_一体化技术服务提供商...
热门文章
- Github | 人脸识别手册 (分类论文集)
- 《Python编程从入门到实践》记录之函数编写指南
- 2020年300分计算机考研能上那个学校,2020年研究生考试很难吗 网友:我考300分能读吗?...
- linux 内核模块开发,linux内核模块开发(示例代码)
- case when 效率高不高_扬州效率高的拍摄抖音短视频平台
- microsoft query sql引用单元格_Microsoft.Office.Interop.Excel操作Excel拾遗
- Java 方法使用final 修饰参数的作用
- oracle查看表中记录数,Oracle 查询某一用户下所有表的记录数
- java自动获取ip_java自动获取电脑ip和MAC地址
- 图层样式混合选项_图标设计,用PS的图层样式制作逼真的玉石图标