zoukankan      html  css  js  c++  java
  • iOS如何生成.a文件

     

    • 首先来谈谈为何要使用.a文件 Objective-c语言有.h .m 文件组成。静态库可以将 .m文件封装成一个.a文件,第三方应用程序只需要拿到这个.a文件和代码对应的.h文件即可使用静态库中封装的方法。IOS静态库适合去制作第三方提供的SDK。

      第一步

      1.首先创建一个新的工程,选择Framework
      &Libryary,在选择Cocoa Touch Static Library 工程名自己定义
      BB2ECA5B-8795-4ECA-88AF-D2FB0F8BA382.png
      BB2ECA5B-8795-4ECA-88AF-D2FB0F8BA382.png
      2.接下来你会看到自动生成.h和.m文件 可以在.m文件中写你要的代码
      F1898D4B-A084-488B-8170-A8DE5682136B.png
      F1898D4B-A084-488B-8170-A8DE5682136B.png
      3.我们来创建一个简单的代码
      .h文件如下
      D8EE5B3D-A2B4-4CFC-AF6D-1B31CB1BE250.png
      D8EE5B3D-A2B4-4CFC-AF6D-1B31CB1BE250.png
      .m文件如下
    1560D4FD-1030-4643-AA44-7070C028D2D3.png
    1560D4FD-1030-4643-AA44-7070C028D2D3.png

    4.接下来就是编译生成.a文件了
    快捷键(command+B)选中真机编译和选中模拟机编译对应生成的连个.a文件一个是真机的一个是模拟机的

    5AB668DE-A882-4EA5-B3AA-F7C67FB650B7.png
    5AB668DE-A882-4EA5-B3AA-F7C67FB650B7.png

    这时候去资源库里查找编译生成的.a文件
    找到 前往 然后 按着 option 快捷键 你会看到 资源库 点击 如图



    998F053B-CD9A-455C-8B88-CF0A72B7C8B7.png

    看到Release-iphoneos 和Release-iphonesimulator 里边的.a文件

    5AB668DE-A882-4EA5-B3AA-F7C67FB650B7.png
    5AB668DE-A882-4EA5-B3AA-F7C67FB650B7.png

    4.接下来就是将你生成的.a文件引入到你想加入的工程中

    4FF87073-D14F-4D6D-964A-78A59B155743.png
    4FF87073-D14F-4D6D-964A-78A59B155743.png

    引入方法:直接将上图你所看到的include文件夹中所有的.h文件和下边对应的.a文件直接拖到你的工程中 千万注意下图中的三个选项勾选

    FB518732-A5E0-419E-8A92-8B07803A83C4.png
    FB518732-A5E0-419E-8A92-8B07803A83C4.png
    D5B5F50F-5A90-48C1-B669-DE1F8E5B740B.png
    D5B5F50F-5A90-48C1-B669-DE1F8E5B740B.png

    5.添加成功后就可以直接使用了 但是需要注意的是 如果你是选择模拟器编译生成的.a文件那么在真机运行的时候是会报错的 所以为了可以使用真机和模拟器都可以使用.a文件可以合并成为一个.a文件 使用终端合成具体方法如下:
    ZXYdeMacBook-Pro:~zxy$  lipo -create /所在路径/Release-iphoneos/libGenerateFaile.a /所在路径/Release-iphonesimulator/libGenerateFaile.a  -output/Users/zxy/Desktop/libUniversal.a
    这样,就可以合并成一个通用的静态库,唯一的缺点是体积要大一点相对于真机和模拟器两个的总大小 之后将这个静态库拖到工程中即可

     
  • 相关阅读:
    mouseover和mouseenter的区别 mouseenter不会冒泡,mouseleave不会冒泡;
    2021年1月24日 命令按钮控件Button 和 单选按钮控件RadioButton 和复选框按钮
    2021年1月23日 文本框控件
    2021年1月21日 画了个注册的界面
    2021年1月29日 体温上报app03
    2021年1月18日 activity的三种状态
    2021年1月16日 秒表app
    2021年1月15日 界面跳转
    1.CSS知识点——css的引入方式
    面试题 315
  • 原文地址:https://www.cnblogs.com/lyy-5518/p/5459643.html
Copyright © 2011-2022 走看看