zoukankan      html  css  js  c++  java
  • ios创建库及其调用

    ios的应用,也不都是使用ios自带的框架或者自己写所有实现,有时需要使用第三方库,比如ios调用flurry做统计分析。

    下面简要说明,如何创建自己的库,并且部署到另外的项目中使用。

    创建库

    通过xcode的想到可以很容易的创建库。为了简单起见,这里只用objc写最简单的类代码。当然是可以用c、c++语法写库函数的,而且也很常见。

    image

    ios为了安全上的考虑,只允许使用静态库,即静态联编到应用程序中。动态库,是独立存在的,直到应用运行时才加载到应用内存中。

    然后,起个名字,静态库项目就建好了。

    在Classes目录下创建文件:

    image

    创建普通的类文件:

    image

    创建好的样子:

    image

    在头文件中增加了个方法:

    @interface Tools : NSObject {
    
    }
    
    -(void)sayHello;

    在m文件中实现方法:

    @implementation Tools
    
    -(void)sayHello{ 
        NSLog(@">>hello!!!"); 
    }

    编译,会在Products下看到:

    image

    libMyLib.a就是生成的静态库文件。

    库的部署

    创建一个新的项目,调用这个库文件。创建一个最简单的window-base的iphone项目。

    image

    然后,在finder中找到库项目的xcodeproj文件:

    image

    把该文件拖拽到这里:

    image

    会弹出以下窗口:

    image

    点击add即可。鼠标选中Targets下的项目,然后command+i

    image

    将调出target的信息对话框,照下面图的箭头提示做:

    image

    然后,选中.a的库文件,拖拽到指定位置:

    image

    还需要,让使用的项目知道库的.h文件在哪里。如下图:

    image

    鼠标选中UseMyLib,然后command+i,在弹出的info对话框中指定头文件的搜索路径,实际上就是指定库项目的目录即可。

    这样部署就可以了。搞的这么麻烦是因为,方便库项目和使用库项目之间的联调。比如在使用库的过程中发现问题直接改库的代码并编译,再编译运行使用库的项目,不需要重新部署库了。

    调用库

    在需调用库的代码的头文件中加入:

    #import <UIKit/UIKit.h> 
    #import "Tools.h" 
    @class Tools;

    然后在m文件中使用:

    Tools *tools=[Tools new]; 
    [tools sayHello];

     

     

  • 相关阅读:
    P1030 求先序排列 P1305 新二叉树
    spfa
    Clairewd’s message ekmp
    Cyclic Nacklace hdu3746 kmp 最小循环节
    P1233 木棍加工 dp LIS
    P1052 过河 线性dp 路径压缩
    Best Reward 拓展kmp
    Period kmp
    Substrings kmp
    Count the string kmp
  • 原文地址:https://www.cnblogs.com/yingkong1987/p/2634398.html
Copyright © 2011-2022 走看看