博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
玩转 iOS 开发:Aggregate 脚本版本《模拟器与真机静态 Framework 合成教程》
阅读量:7251 次
发布时间:2019-06-29

本文共 1463 字,大约阅读时间需要 4 分钟。

作者感言

为了写这篇文章, 我翻查了许多资料, 都没有找到详细点的可参考资料, 外国的文章就不用说了, 光是看鸡肠就头晕了, 所以我自己总结了一些经验, 整理了一番, 决定分享出来, 希望大家喜欢

最后: 如果你有更好的建议或者对这篇文章有不满的地方, 请联系我, 我会参考你们的意见再进行修改, 联系我时, 请备注Aggregate-Framework如果觉得好的话, 希望大家也可以打赏一下~嘻嘻~祝大家学习愉快~谢谢~


简介

之前我写了一个关于非Aggregate版本的, 但那个实在是太麻烦的, 所以我又出墙翻了一些歪果仁写的博客, 果然是世上无难事只怕有心人, 终于被我找到合适的Shell脚本了


创建静态包工程

新建一个Workpace文件

新建Cocoa Touch Framework工程


添加测试类

添加一个测试类TestTwoClass


配置静态包工程


分别生成真机与模拟器的静态包


创建脚本选项


配置脚本选项

打开Run Script之后, 输入以下的脚本, 就可以自动合成通用的Framework库了

PS: 脚本是我在Google上搜到的, 详细是谁写的, 我也不清楚, 很感谢这个作者提供的脚本

if [ "${ACTION}" = "build" ]thenINSTALL_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}" ]thenrm -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复制代码

这里逮到一个错误, 不要慌, 因为我们之前是用Release模式的, 只要把Aggregate切换到Release模式, 再运行就可以了


检测静态包


测试静态包

测试的方法和这里面的测试方法一样, 这样就不多做解释了

但是这里还有一点需要注意一些, 由于我们刚刚在打包的时候, 是把TestTwoClass.h是丢到Private里面去的, 哪怕我们已经把头文件丢到TestTwo.h中, 然后再引用TestTwo.h, 依旧是没办法去调用TestTwoClass内部的任何东西, 怎么办呢?

我们只要去改改导入的头文件就可以了, 比如:

PS: 这种方式只是我们来玩玩而已, 基本上我们都会吧.h文件放到public


工程地址

项目地址:


结束语

好啦, 教程到这里就结束了, 谢谢大家的耐心观看

转载地址:http://othbm.baihongyu.com/

你可能感兴趣的文章
[单刷APUE系列]第十七章——高级进程间通信
查看>>
分布式之消息队列的特点、选型、及应用场景详解
查看>>
多迪学员问到最多的问题:为什么要学习Python编程语言?
查看>>
从vue中学习defineProperty
查看>>
漂亮的颜色
查看>>
Android Volley 源码解析(二),探究缓存机制
查看>>
Go源码剖析:内置类型
查看>>
102. Binary Tree Level Order Traversal
查看>>
SAP云平台对Kubernetes的支持
查看>>
原来实现GCP用客户端登录这么简单啊
查看>>
PAT A1057 分块思想
查看>>
PAT A1007 动态规划
查看>>
VUE父子组件传递数据
查看>>
前端知识点——图片
查看>>
别人家的程序员是如何使用 Java 进行 Web 抓取的?
查看>>
95%的技术面试必考的JVM知识点都在这,另附加分思路!
查看>>
日期类问题
查看>>
区块链入门之基础知识
查看>>
mysql锁(Innodb)
查看>>
小程序开发之影分身术
查看>>