美文网首页FrameworkiOS-SDK
【潮汐】iOS framework-SDK开发用Cocoapod

【潮汐】iOS framework-SDK开发用Cocoapod

作者: 爱恨的潮汐 | 来源:发表于2022-02-23 12:49 被阅读0次

    2022年2月23日亲自测有用

    iOS framework-SDK开发用Cocoapods管理第三方库

    一.创建工程

    1.选择Cocoa Touch Framework

    image

    2.更改Xcode配置

    image

    注:Dead Code Stripping:舍弃无用代码

    Link With Standard Library:用标准库连接

    Mach-O Type:类型选择静态库

    3.将Build Active Architecture Only 设置为NO(代表根据Arch 和Valid Arch来设定, 一般Debug模式下为yes,Release模式下为No):

    注:Build Active Archiitecture Only指是否只对当前连接设备所支持的指令集编译,在debug模式下为了编译更快选择yes,而release模式下设为No,支持所选的所有架构

    4.创建Podfile文件

    image

    引入第三方库,然后执行pod install

    image

    5.打开pod生成的.xcworkspace文件,创建类

    image

    4.设置Headers

    将需要公开的头文件拖置Public

    image

    二.创建demo联调

    1.通过workspace文件打开步骤一的SDK项目

    2.新建一个target,类型选择Single View App

    3.编辑Podfile,如下所示,联调需要分别设置SDK与Demo的的target,导出包给别人用好像不需要设置SDK的target,只用设置项目的target:

    image

    4.执行pod install

    5.Other Linker Flages 处添加:-ObjC 。 Enable Bitcode 设置为NO,不然三方framework无法使用。

    6.选中demo的target,在Target Dependencies中将SDK和bundle的target加进来,并且在Link Binary With Libraries中添加SDK的framework, 在Copy Bundle Resource中添加bundle。这样的话,SDK有改动,demo引用的是最新版本。
    注意:直接把自己的BRCBTwoAccountPaySDK.framework往demo里拖,别勾选copy也可以。

    将图中替换内容后的标红框的framework拉出来保存,此为制作完成的Framework

    四.脚本编译出SDK供其它项目使用

    1.在SDK项目中创建一个新target,类型选择Aggregate

    image

    2.选中新创建的target,在Build Phrases下添加一个Run Script,内容参考如下:

    #通过脚本合并真机和模拟器SDK包
    TARGET_NAME=${PROJECT_NAME}
    OUTPUT_DIR=${SRCROOT}/Products/${TARGET_NAME}.framework
    DEVICE_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphoneos/${TARGET_NAME}.framework
    SIMULATOR_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphonesimulator/${TARGET_NAME}.framework
    
    if [ -d "${OUTPUT_DIR}" ]
    then
    rm -rf "${OUTPUT_DIR}"
    fi
    
    mkdir -p "${OUTPUT_DIR}"
    cp -R "${DEVICE_DIR}/" "${OUTPUT_DIR}/"
    
    lipo -create "${DEVICE_DIR}/${TARGET_NAME}" "${SIMULATOR_DIR}/${TARGET_NAME}" -output "${OUTPUT_DIR}/${TARGET_NAME}"
    
    open "${SRCROOT}/Products"
    

    3.编译Aggregate 类型的target,会自动打开SDK所需framework所在的文件夹。

    注:步骤二和步骤一示例名称有所不同,不用纠结,只为示例!

    制作完成!!!

    原文链接

    相关文章

      网友评论

        本文标题:【潮汐】iOS framework-SDK开发用Cocoapod

        本文链接:https://www.haomeiwen.com/subject/nwsolrtx.html