iOS SDK 开发配置及调试

333 阅读1分钟
  1. Xcode -> File -> New -> WorkSpace, 保存到指定目录

  2. Xcode -> File -> New -> Project,选择Framework,然后Next;

  3. 将创建的SDK工程添加到刚创建的WorkSpace:

  4. 设置Mach-O Type 为Static Library:

  5. 创建测试代码:

  6. 将要暴露的头文件拖入Public下面,

    并将头文件添加入SDK的.h文件中:

    #import <TestSDK/MyView.h>
    
  7. Xcode -> Editor -> New Target:

  8. 添加将模拟器库和真机库合并的脚本:

  9. 选择 New Run Script Phase,添加如下脚本:

    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
    
    1. Xcode -> File -> New -> Project,选择:
  10. 选择将项目添加入WorkSpaceTest中:

  11. iOS 13 删除 SceneDelegate,并在Appdelegate.h中添加window:

    @property (strong, nonatomic) UIWindow *window;
    
  12. 删除Plist文件中的Scene相关字段:

  13. 编译SDK:

  14. 上一步编译成功后会打开生成的SDK路径,将Framework拷贝出来,放到比如桌面上:

  15. 将刚才拷贝出的Framework拖入TestSDKDemo中:

  16. 最终如下:

  17. 使用:

    #import <TestSDK/TestSDK.h>
    - (void)viewDidLoad {
        [super viewDidLoad];
        self.view.backgroundColor = UIColor.whiteColor;
        MyView *view = [[MyView alloc] initWithFrame:CGRectMake(100, 140, 200, 40)];
        [self.view addSubview:view];
    }
    
  18. 效果:

  19. 修改SDK中MyView背景色,重新编译,应该会直接发生变化;

  20. 如果SDK中使用了category,需要在使用SDK的项目中添加如下设置: