iOS - 在Application工程中创建静态库,进行静态库开发

创建一个Appliction工程–SDKTestDemo

这里写图片描述

在已创建好工程中创建静态库的Target-SDKplugin

这里写图片描述

创建成功后

点击SDKTestDemo.xcodepro 即可看到 SDKTestDemo 和 SDKplugin 如下
这里写图片描述

设置静态库对外可见的.h文件

    点击Target- SDKplugin

这里写图片描述

设置静态库 与 工程的依赖关系

    点击Target - SDKTestDemo

这里写图片描述

因为静态库中不能有资源文件,创建bundle资源库专门存放静态库的资源文件-SDKBunld

1.创建.Bundle文件:new Target -->选中MacOS选项--->创建bundle

这里写图片描述
2.修改bundle资源库的配置
修改前:
这里写图片描述
修改后:
这里写图片描述

设置Bundle资源库 与 工程的依赖关系

    点击Target - SDKTestDemo

这里写图片描述

这里写图片描述

注意事项

  1. 当在静态库中加载bundle的Xib文件时,会报
Unknown class VCCardViewCell in Interface Builder file.
2018-08-02 09:05:48.070615+0800 HisunVisitingCardDemo[18443:9501864] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIView 0x10343c730> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key headerImageView.

解决方案:在Build-setting -> Other Linker Flags ->-ObjC,即可

  1. 静态库中加载Xib,图片资源
#define HISUNPLUGIN_BUNDLE_NAME @"HisunVisitCardBundle.bundle"
#define HISUNPLUGIN_BUNDLE_PATH [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent: HISUNPLUGIN_BUNDLE_NAME]
#define HISUNPLUGIN_MYBUNDLE [NSBundle bundleWithPath: HISUNPLUGIN_BUNDLE_PATH]

[[HISUNPLUGIN_MYBUNDLE loadNibNamed:_cardNib owner: self options:nil] lastObject]
[[UIImage imageNamed:[NSString stringWithFormat:@"%@/%@.png", HISUNPLUGIN_BUNDLE_PATH, pic]]

一个静态库开发工程已经创建好,提供第三方使用给出 .a ,外部类 以及 .bundle 三样即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值