iOS架构-静态库.framework手动打包及脚本化打包(5)中介绍了.framework的脚本化打包,虽然在iOS架构-静态库.a打包之资源文件打包成bundle(4)中已经演示过,其实是一样的。但在这里还是补充一下.framework资源文件的使用。以免部分读者心里不甚明白。

1.添加图片资源和带xib的测试类:MyViewController(从iOS架构-静态库.a打包之资源文件打包成bundle(4)的例子的复制来的)
同时也把CRRobotBundleManager 类复制过来,目录如下
3.资源文件的Target Membership只选择bundle

4. 修改代码:将copy 过来的代码中

VideoPlayerLibBundle 替换为 MySDKResource

//重写要加载的view的init方法
- (instancetype)init {NSBundle *bundle = [NSBundle bundleWithPath:[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"MySDKResource.bundle"]];self = [super initWithNibName:@"MyViewController" bundle:bundle];if (self) {// Custom initialization}return self;
}- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view from its nib.// 方法一self.testImageView.image = [UIImage imageNamed:@"MySDKResource.bundle/cr_add_hidden.png"];// 方法二// NSString *pic1Path = [CRRobotBundleManager getFilePathFromBundle:@"cr_add_hidden.png"];// self.testImageView.image = [UIImage imageWithContentsOfFile:pic1Path];
}
+ (NSBundle *)getBundle {return [NSBundle bundleWithPath: [[NSBundle mainBundle] pathForResource:@"MySDKResource" ofType: @"bundle"]];
}
  1. 选中 Scheme -->MySDKResource.bundle 编译
  2. 编译后的MySDKResource.bundle 的位置
  3. 在脚本中将MySDKResource.bundle 拷贝到 MySDK 文件中
    在脚本 Script.sh lipo -create 步骤上面添加如下代码
#bundle工程名
bundle_name=${project_name}Resource
#图片资源资源
BUNDLE_DIR_INCLUDE=${build_DIR}/${development_mode}-iphoneos/${bundle_name}.bundle
echo "图片资源资源路径=${BUNDLE_DIR_INCLUDE}"
#将图片资源copy到目标文件夹
cp -R "${BUNDLE_DIR_INCLUDE}" "${INSTALL_DIR}"
  1. 然后重新执行脚本即可得到目标文件夹
  2. 导入demo使用
  3. 跳转加载 framework 使用bundle 的资源效果如下:

终于加载出来的。

写在最后:静态库.framework 以及 资源bundle 手动、脚本自动打包以及使用到此结束了。

接下来课题还没准备好,不过还是在架构,静态库或者动态库,以及脚本、cocoapods打包库 以及依赖第三方库方面继续研究!

iOS架构-静态库.framework之资源文件打包bundle(6)相关推荐

  1. iOS架构-静态库.framework之依赖第三方库(7)

    需求分析:     把自己的能力封装成静态库提供给客户使用,但是有些工作市场上已经有很好的公开的代码,或者成本很低的解决方案,我们就可以使用别人公开的.或者低成本采购的技术来为我们服务.制作静态库也是 ...

  2. iOS架构-静态库.framework手动打包及脚本化打包(5)

    引用一张博客的图片来理解下基本知识(http://www.cnblogs.com/oc-bowen/p/7478461.html) 我们可以看出.a的封装和.framework的封装差不多,也有模拟器 ...

  3. iOS架构-静态库.framework脚本化打包补充(5)

    静态库.framework脚本化打包打包已经在iOS架构-静态库.framework手动打包及脚本化打包(5)中讲过.这里补充是通过Xcode 配置Aggregate自动执行脚本打包Framework ...

  4. iOS架构-静态库.a的脚本化打包及使用(3)

    接着iOS架构-静态库.a的打包及使用(一)继续研究静态库.a的打包 需求背景: 手动编译静态库工程是会生成模拟器和真机两个不同的.a包 终端合成 $:lipo -create 真机.a路径 模拟器. ...

  5. iOS架构-静态库.framework(引用第三方SDK、开源库、资源包)(9)

    前面介绍了 静态库.a依赖第三方静态库.a的制作 静态库.framework之依赖第三方库(Cocoapods进行管理) 今天课题: 静态库.framework(引用第三方SDK.framework. ...

  6. iOS架构-静态库.a打包之资源文件打包成bundle(4)

    iOS架构-静态库.a的打包及使用(一) iOS架构-静态库.a的脚本化打包及使用(二) 资源文件主要包括:xib.图片以及其他文件资源(json.string等).这里主要介绍 xib.图片.其他的 ...

  7. iOS架构-静态库.a之依赖第三方静态库.a的制作(8)

    上一篇讲的是静态库.framework 依赖第三方库,是通过Cocoapod 提供的第三方库.而有时我们会依赖第三方.a 或者.framework 的.那么怎么样来制作依赖第三方.a 或者.frame ...

  8. iOS架构-静态库.a 和.framework的区别(0)

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

  9. iOS架构-静态库.a编译时自动导出.h头文件(24)

    在使用Xcode成功编译一个静态库时,在对应的输出目录下有一个include目录,但是其中没有相关的.h头文件.由于.h文件和 .cpp文件是在同一个目录下,再加上文件数量较多,如果手动的将.h文件导 ...

最新文章

  1. WinDbg用法详解
  2. MinIO GCS 网关 ​​​​​​​
  3. storm 出现一次运行结果,后续不在出现的原因
  4. 在IDEA中解决jar包冲突的神操作-必看,秒杀市面方法
  5. VMware虚拟机与Windows文件共享
  6. ubuntu搭建简单http服务器
  7. cad多线段长度计算总和_CAD小白必备:1秒教会你CAD画线,再也不为画线烦恼
  8. javascript实现图片轮播_Node.js实现将文字与图片合成技巧
  9. 火车采集器V2010免费版下载
  10. pcb焊接的一些技巧
  11. C#高级编程——C#扩展方法+接口,定义统一的搜索接口,基于Unity(三)——图文详解加源码
  12. 字符串的几个常用属性
  13. cdn perl_用perl对CDN节点日志进行统计
  14. Android Studio | 页面布局
  15. 基金经理研究所 | 从兴全合润看谢治宇的攻守道
  16. scanf函数、冒泡排序和不定长度数组的使用 —— malloc
  17. OpenStack 计算节点关机,虚拟机状态解决办法
  18. micro:bit 了解
  19. oracle ebs 单位类别 单位 单位转换,ORACLE_EBS_系统主数据管理(一).doc
  20. matlab学习教程,数模比赛入门速成

热门文章

  1. maven根据profile动态选择配置文件
  2. IBM遭标普下调评级
  3. NTP 时间同步流量使用过大 问题解决
  4. 虚拟化之安装Xen实例
  5. 解析 WEB 中所有 URL 的简单牛B代码,先保存起来,方式将来找不到了
  6. How to access the folder of Android
  7. 2019年春季学期第4周作业.
  8. 微信小程序的wxss好难啊,记录我的搞笑界面
  9. 记录Datagrid使用的一些事项
  10. GitHub教程学习笔记3---分支管理