美文网首页ios
ios制作framework过程中遇到的问题

ios制作framework过程中遇到的问题

作者: karthus | 来源:发表于2015-12-09 16:28 被阅读1012次

1.首先是bundle使用中的问题,bundle有两种做法:

其一是File->new->Target->OS X中的framework&library中可以新建一个bundle,这样的bundle每次添加新文件后需要编译后才能使用;

其二是直接在Finder中新建文件夹,将后缀名更改为.bundle就行了,这种类型不需要编译。

2.bundle中如果使用xib文件需要特别注意:

bundle中使用xib文件后,在运行过程中会报XXX not yet load的提示,所有bundle中如果有xib文件需要转为nib才能使用,命令:ibtool --errors --warnings --output-format human-readable-text --compile test.nib test.xib

3.如此生成的framework在新的工程中引用依然会出现如下错误提示:

Undefined symbols for architecture i386:

"_OBJC_CLASS_$_FMDatabase",referenced from:

objc-class-ref in ViewController

objc-class-ref in AppDelegate

我出现这个问题的原因是直接用了product中生成的framework,在利用命令生成了一个模拟器和真机都通用的framework后就解决了,命令:lipo -create Release-iphoneos/testFramework.framework/testFramework Release-iphonesimulator/testFramework.framework/testFramework-output testFramework将生成的文件替换掉testFramework里面的同名文件就行了;

4.如果你编译的是静态库,并且静态库中有category,又会出现如下unrecognized selector sent to class这个错误提示,这时只需要修改一下你引用了这个静态库的文件的buildSetting就行了在加入-all_load如图:

相关文章

网友评论

    本文标题:ios制作framework过程中遇到的问题

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