美文网首页
使用Cocoapods创建SDK,并生成Framework

使用Cocoapods创建SDK,并生成Framework

作者: 一片不甘平凡的树叶 | 来源:发表于2020-12-31 17:49 被阅读0次

    创建SDK项目
    pod lib create <sdk name>

    截屏2020-12-30 下午2.55.23.png

    需要回答几个问题

    • 使用什么平台?
    • 使用什么语言?
    • 是否需要demo项目?
    • 使用什么测试框架?
    • 是否需要集成基于view的测试框架?
    • 使用什么文件名前缀?


      截屏2020-12-30 下午4.23.33.png

    sdk生成成功后会自动使用Xcode打开项目


    截屏2020-12-30 下午4.24.03.png

    包含demo的sdk项目


    截屏2020-12-30 下午4.29.48.png

    podspec文件包含sdk项目的所有配置信息


    截屏2020-12-30 下午4.56.36.png

    如果sdk中包含资源文件,需要从sdk的bundle中加载

    NSString *bundlePath = [[NSBundle mainBundle] pathForResource:@"Frameworks/TFExampleLib.framework/TFExampleLib.bundle" ofType:nil];
    NSBundle *bundle = [NSBundle bundleWithPath:bundlePath];
    UIImageView *imageView = [[UIImageView alloc] initWithFrame:self.bounds];
    imageView.image = [UIImage imageNamed:@"moon" inBundle:bundle compatibleWithTraitCollection:nil];
    
    截屏2020-12-30 下午7.14.44.png

    打包成framework
    pod package <sdk name>.podspec

    截屏2020-12-30 下午7.25.12.png

    生成framework成功


    截屏2020-12-30 下午7.27.58.png
    截屏2020-12-30 下午7.42.30.png

    Xcode12在模拟器和真机编译的Framework都有包含arm64的架构,所以使用pod package直接打包Framework会报错,具体解决方案可以参考:
    IOS pod package 报错:Pods/build/package.a and Pods/build-sim/package.a have the same architectures

    Demo项目地址

    相关文章

      网友评论

          本文标题:使用Cocoapods创建SDK,并生成Framework

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