iOS 打包静态Framework

1 新建工程,选择Framework

本示例中将AFNetWorking打包成库,工程名为AFNetWorking。会自动生成AFNetWorking.h文件,这个文件就是用来暴露头文件给外部工程使用

图1

2 搜索栏搜索对应关键词,修改配置为如图中样式


图2
图3


图4
图5




3 暴露头文件,在h文件和Build Phases中暴露需要给外界使用的头文件:


图6


图7

图4和图5开放的头文件是一样的,在h文件中引入头文件必须采用图5的方式。

4 打包

首先生成一个类型为Aggregate类型的TARGETS.


图8

点击+,选择以下界面选项:

图9

名字随便写一个就行,然后按照图中选项添加脚本


图10

将下面代码复制粘贴

if [ "${ACTION}" = "build" ]

then

INSTALL_DIR=${SRCROOT}/Products/${PROJECT_NAME}.framework

DEVICE_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphoneos/${PROJECT_NAME}.framework

SIMULATOR_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphonesimulator/${PROJECT_NAME}.framework

if [ -d "${INSTALL_DIR}" ]

then

rm -rf "${INSTALL_DIR}"

fi

mkdir -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

5 运行

选中框架在真机和模拟器下分别编译(command+B)


图11

然后选择脚本target,编译,会自动弹出一个界面,里面有生成的框架,然后导入到所需要的工程中就可以了。


图12



图13完结撒花
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容