当前位置: 首页 > article >正文

创建属于你的SDK!

以下总结是我近一年来做sdk的小小心得,可能还有很多东西没有总结好,我会不断更新的!

创建Static Framework

1.如图创建Framework

2.选中Target,在Build Settings中搜索“Mach-O Type”, 改为“Static Library”

静态的Framework已经创建好了,是不是很简单呀!不过还有几点需要注意:

(1)Architectures,中文名好像是架构,如果你想你的framework可以跑在所有的iPhone,那么你需要注意一下它下面的Architectures和Valid Architetures,都设置为 arm64 和 armv7即可。
(2)你如你想你的framework可以同时用于真机和模拟器,那么你需要分别编译打包,然后合并,即所谓的通用framework,详情见 “制作通用的Framework ”


制作通用的Framework 

1.首先将你的真机和模拟器打包的framework放在同一目录下,比如我的ZCPlatformSDK_iPhone.framework 和 ZCPlatformSDK_simulator.framework

2.ZCPlatformSDK是framewor下的可执行文件,你进入到你的framework,很容易发现它

3.制作通用的可执行文件

lipo -create ZCPlatformSDK_iPhone.framework/ZCPlatformSDK ZCPlatformSDK_simulator.framework/ZCPlatformSDK -output ZCPlatformSDK

4.使用通用的ZCPlatformSDK替换掉真机framework下的可执行文件,此时的真机包,哦不,应该是通用framework啦!

Tips:你知道Xcode中的“New run script phase”吗?你可以在它下面写一些脚本,非常神奇有效的!


到此,你的SDK就创建完毕了吗?当然没有,因为我们的sdk绝大部分都有一些资源,如果你不想你的framework中一团乱,就可以使用Bundl来管理,请继续往下看



创建Bundle

1.Xcode没有为iOS专门提供模板,所以需要借助OS X中的Bundle模板

图

























2.添加资源

资源
















3.使用资源图片

#define Bundle_Image(name) [UIImage imageNamed:[NSString stringWithFormat:@"ZCPlatform.bundle/%@", name]]

这样以后,项目中直接使用Bundle_Image(@"imageName")即可,最好带着后缀,比如png或者jpg


Tips:

1.我提交App store的时候报错,说“Bundle中不能含有可执行文件”,于是我手动删除bundle的Plist文件中的Key “Executable file”这一行,圆满解决!

2.记住一定要修改bundle的Architectures中的Base sdk为“Latest iOS(**)”


我在使用自己的SDK遇到的一些问题

1.当你开开心心地把自己创建的framework加入到项目工程中,发现“Link error”,别急,我也遇到啦!这时,你需要添加framework相对你的项目路径到Framework Search Paths中

哈哈

http://www.lryc.cn/news/2413141.html

相关文章:

  • Ubuntu镜像换源地址
  • 电力-二次融合FTU技术规范
  • 使用C#抓取页面----GET方法,POST方法,抓取登录页面
  • python 初中课程_8年级将新增Python课程内容
  • 最新Xcode 4.5 Developer Preview. 开发预览
  • 学习日志7.28--VRRP(Virtual Router Redundancy Protocol)虚拟路由冗余协议
  • 20个代码生成框架
  • jdk 6.0
  • yocto 3.03 linux 5.4.24 weston 8.0 qt触摸屏问题
  • 易宝支付银行接口,各参数
  • 菜鸟小技巧:如何在网上隐藏自己的IP地址(1)
  • CF 题解
  • 202312C语言二级真题
  • query.uniqueResult()
  • CSS 实现 10 种现代布局,你都会了吗
  • gwt-ext搭建环境
  • 从ASM磁盘中还原出文件(一)
  • pages 元素(ASP.NET 设置架构)web.config 详解
  • 游戏商城任务书
  • 计算机维修常识
  • 操作系统上机5:理发店问题
  • 江科大STM32最全笔记整理『上篇』
  • “永恒之蓝”(Wannacry)蠕虫全球肆虐 安装补丁的方法
  • MyEclipse6.0.1自动生成注册码
  • 【Cocos2d-html5游戏引擎学习笔记(6)】自定义Cocos2d-html5加载资源Loading界面
  • 5个炫酷登录页面,拿去就能用(附源码)
  • 5大国外广告联盟赚美金项目,诱人的美金在向你招手!
  • EMQX 服务器搭建 使用python生产消费
  • 软件测试简历怎么写?可以参考这份简历
  • 免费的API端口有哪些 2024年免费的API端口汇总大全