iOS 封装.framework 以及使用

.framework是什么?

     

      .framework是什么?

      这个问题相信做iOS的都知道答案。 在我们的日常开发中,经常会用到各种已经封装好的库,比如支付宝、微信SDK等等中的库,这些库可以给我们的开发带来很大的便利。有的时候,由于工作的需要,我们需要对自己的项目进行封装,生成库,方便别人的使用。在这里就边参考好点的博客,边总结一下我们经常看到的.framework。

      那什么是“库”呢?

      “库”是共享程序代码的一种方式!同行总结的这句话很简单也很好的说明了它的作用!

      一般的分为“静态库”和“动态库”。

 

“静态库”和“动态库”有什么区别?

 

      “静态库”  链接时候完整的拷贝至可执行文件中,被多次使用就会有多次拷贝。

      “动态库”  链接时候不复制,程序运行时由系统动态加载到内存,供程序调用,系统只加载一次,多个程序共用,节省内存!

 

iOS里静态和动态库形式


      静态库形式: .a和.framework

      动态库形式: .dylib和.framework

 

.a与.framework有什么区别

 

      .a是一个纯二进制文件,.framework中除了有二进制文件之外还有资源文件。
      .a文件不能直接使用,至少要有.h文件配合,.framework文件可以直接使用。
      .a + .h + sourceFile = .framework。
       所以我们建议用.framework.

 

下面我们通过实际的例子自己制作一下

 

       我们首先得创建这个FrameWork,按照下图:

iOS 封装.framework 以及使用

 

      我们创建了这个FrameWork,看看这个 FrameWork的结构:

iOS 封装.framework 以及使用

 

      我们再里面简单的添加了一个ShowNSlog的类,并且我们添加了一个 FrameWorkTest.boundle文件,看看我们在这个类里面写了什么内容:

 

#import "ShowNSLog.h" @implementation ShowNSLog +(void)showLog{ NSLog(@"你使用了我们的静态库"); } +(NSString *)showLogWithReturn{ return @"zhouzhou.jpg"; } @end

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzyfgf.html