静态库打包——.a和.framework文件

时间:2022-09-21 00:59:00

参考链接

步骤:适配所有的模拟器和真机

——生成.a文件

<1>建一个静态库工程

静态库打包——.a和.framework文件

<2>生成.a文件(注意添加类.h和.m文件)

静态库打包——.a和.framework文件

同理:接入任意款真机,同上述操作,生成真机的.a文件;

<4>合并模拟器和真机.a文件,并生成新的.a文件——此处把模拟器和真机的.a文件剪切到了桌面上,也可以不用放到桌面上!

//找到生成的真机和模拟器的.a文件

静态库打包——.a和.framework文件

//用命令行合并成新的.a文件:lipo -create name1.a所在路径 name2.a所在路径 -output newname.a——注意空格,名字可以全部都一样(name1.a和name2.a直接拖进窗口即可)

静态库打包——.a和.framework文件

<5>导入项目工程中应用

//找到新生成的.a文件

静态库打包——.a和.framework文件

//导入项目工程应用——.h文件和新生成的.a文件一并导入

静态库打包——.a和.framework文件

静态库打包——.a和.framework文件

——生成.framework文件

<1>创建一个framework工程

静态库打包——.a和.framework文件

<2>环境配置

//真机版本适配

静态库打包——.a和.framework文件

//导入目标文件

静态库打包——.a和.framework文件

//设置静态库

静态库打包——.a和.framework文件

//暴露头文件

静态库打包——.a和.framework文件

<3>生成.framework文件夹

步骤同.a文件操作

<4>合成.framework文件——所在位置同.a文件

命令: lipo -create name1所在位置 name2所在位置 -output 新文件名

静态库打包——.a和.framework文件

注:以上name1、name2指的是如下文件(并非FrameworkLib.framework文件夹)

静态库打包——.a和.framework文件

<5>项目应用——将新生成的framework文件导入到模拟器或真机的FrameworkLib.framework文件夹中进行覆盖,再整体导入项目工程中

静态库打包——.a和.framework文件

静态库打包——.a和.framework文件

静态库打包——.a和.framework文件

效果图:

静态库打包——.a和.framework文件

补充:不管是生成.a文件还是.framework文件,区分发布和调试模式

静态库打包——.a和.framework文件

GitHub

静态库打包——.a和.framework文件的更多相关文章

  1. 查看目标文件是否是以-fPIC编译的, ar 打包命令将多个静态库打包到一个里面

    readelf --relocs foo.o | egrep '(GOT|PLT|JU?MP_SLOT)' 上句大多数时候(和平台有关)可以正确判断是否是以fPIC选项编译的,如果输出为空,基本可以表 ...

  2. 【转】iOS静态库 【&period;a 和framework】【超详细】

    原文网址:https://my.oschina.net/kaqijiang/blog/649632 一.什么是库? 库是共享程序代码的方式. 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存 ...

  3. 使用ar命令删除iOS静态库重复编译的&period;o文件

    关于 xcode引入第三方静态类库 duplicate symbol _OBJC_XXX 重复编译错误 看这里 http://www.cnblogs.com/cocoajin/p/3917709.ht ...

  4. iOS静态库打包

    当了三年多程序员,第一次写随便,说来有些惭愧.想成为一个优秀的程序员,分析,思考,总结并且做记录是必不可少的,今天先从简单的命令总结记起.好了,废话不多说了,Let's start our games ...

  5. iOS - 静态库的导入和头文件路径的设置

    开发过程中,免不了要用到一些第三方或者是别人写好的一些Demo,这时就经常会用到别人写的一些静态库(.a文件)和n多个头文件(.h文件),这些文件不是简单地把它们拉到自己的工程里面就行的,还要设置一些 ...

  6. iOS - &period;a静态库的打包(包括打包的文件中用到了一些别人的三方库和分类的处理)

    一.概念篇 什么是库? 库是程序代码的集合,是共享程序代码的一种方式 根据源代码的公开情况,库可以分为2种类型 开源库 公开源代码,能看到具体实现 比如SDWebImage.AFNetworking ...

  7. Xcode 创建&period;a和framework静态库&lpar;转载&rpar;

    库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的静态库有 .a 和 .framework两种形式:动态库有.dylib 和 .framew ...

  8. 经验分享:Xcode 创建&period;a和framework静态库【转】

    作者:Haley_Wong 最近因为项目中的聊天SDK,需要封装成静态库,所以实践了一下创建静态库的步骤,做下记录. 库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态 ...

  9. Xcode 创建&period;a和framework静态库

    库介绍 库从本质上来说是一种可执行代码的二进制格式,可以被载入内存中执行.库分静态库和动态库两种. iOS中的静态库有 .a 和 .framework两种形式:动态库有.dylib 和 .framew ...

随机推荐

  1. Qt根据汉字生成位图,可连续调用,生成的位图不会有杂点

    void MainWindow::drawText(int font_size, QString str, int n){ QPainter p; QSize size(460, font_size) ...

  2. TinyXML2读取和创建XML文件 分类: C&sol;C&plus;&plus; 2015-03-14 13&colon;29 94人阅读 评论&lpar;0&rpar; 收藏

    TinyXML2是simple.small.efficient C++ XML文件解析库!方便易于使用,是对TinyXML的升级改写!源码见本人上传到CSDN的TinyXML2.rar资源:http: ...

  3. band

    #include<iostream> #include<math.h> using namespace std; int calculate(double amount[],i ...

  4. Svn正确的使用方法

    想必大家现在都比较喜欢使用svn(subversion)完成代码管理了,因为它的开源,轻巧,易用.但是这样一个宝贝如果不知道其正确的用法,也会让我们百思不得其解,甚至耽误项目进度,浪费程序员的心血和结 ...

  5. 【Java基础】static关键字的理解

    修饰范围: 可以修饰成员变量和成员方法.静态的特点: A:随着类的加载而加载 B:优先于对象存在 C:被类的所有对象共享 这其实也是我们判断该不该使用静态的依据. 举例:饮水机和水杯的问题思考可通过类 ...

  6. WindowsForm 记事本 对话框

    textbox:     属性:         text:文本         selectedtext:获取或设置选中文本         canundo:是否能够撤销     方法:       ...

  7. Linux 内核优化

    声明:本文档来自互联网整理部份加自已实验部份所得: TCP 相关部份   经常使用名词说明: retries(再试).   TCP server <---> client通信状态      ...

  8. HTML块元素,行内元素,类,头部元素

    总结HTML块元素,行内元素,类,头部元素 块元素: 在HTML中,块级元素的高度为其内容的高度,宽度会扩展到与父容器同宽.默认情况下,块级元素会独占一行,并且元素前后行留空. 示例:<h1&g ...

  9. https跨域到http问题解决

    整体结构 用户--https-->Nginx--http-->Tomcat 页面中包含了iframe,iframe的src也是Https的,但是当frame里面的内容表单提交后tomcat ...

  10. mysql大表更新sql的优化策略(转)

    看了该文章之后,很受启发,mysql在update时,一般也是先select.但注意,在Read Committed隔离级别下,如果没有使用索引,并不会锁住整个表, 还是只锁住满足查询条件的记录而已. ...