.a文件是一种对实现文件细节进行隐藏的打包文件。

由于是打包文件,所以需要创建工程,将功能代码添加到工程。下面是创建.a文件的具体步骤:

Step One:打开Xcode(此处使用的Xcode 8.2.1版本),新建工程

选择新建醒目类别:"Cocoa Touch Static library"

新建工程名:“ShowMe”

接下来你会看到工程中已经创建了一个".h"和".m"文件

Step Two:下面是一段小例子,这里也可以写你自己的功能模块代码,此处只是流程展示,不再编写很多代码

.h文件

#import <Foundation/Foundation.h>

@interface ShowMe : NSObject

-(void)showMe:(NSString *)something;

@end

.m文件

#import "ShowMe.h"

@implementation ShowMe

-(void)showMe:(NSString *)something
{
NSLog(@"It`s your %@", something);
} @end

Step Three:接下来修改一些配置项:

Step Four:好了,接下来就可以生成.a文件了,”command+B“,看到”Build Succeeded“即可。

生成的.a文件在哪呢?看下图

大功告成!

Additional:

但是怎么用呢?.a文件是不能单独使用的,需要.h文件配合使用,提供外部访问接口。所以,你需要将所有.h文件(这里只有”ShowMe.h“一个文件,你的肯能有很多,只要将你想让别人看到的.h文件拿出来就可以了)与.a文件一起拷贝到一个新建的空文件夹中即可

使用时将整个文件夹拖拽到项目中即可。

当然,操作过程中会遇到各种错误,请参考:保护你的代码,生成.a文件以及.framework文件需要注意的地方

更多错误还在探索中...

欢迎路过...

如何生成.a文件,小心有坑!!的更多相关文章

  1. asp.net使用SpeechSynthesizer类生成语音文件部署到iis遇到的几个坑

    首先需要引入命名空间System.Speech.Synthesis,代码如下: using (var speechSyn = new SpeechSynthesizer()) { speechSyn. ...

  2. 【坑】Mybatis 多次逆向工程生成mapper文件

    在使用 mybatis 逆向工程的时候,多次逆向工程生成的文件,是不会产生覆盖的,而是追加: 假如,你第一次逆向,发生数据库的某个字段类型错了,修改以后再次逆向,那么得到的 mapper文件,将是 2 ...

  3. 保护你的代码,生成.a文件以及.framework文件需要注意的地方

    一个好的设计,一个方便使用的控件封装,一个酷炫的动画... 是不是迫不及待要分享给大家你的每一个突然蹦出来的好的idea,那就下手吧! 可是,你想要的只是让大家使用它,而不是把所有技术点都公开给每个人 ...

  4. windows下Android利用ant自动编译、修改配置文件、批量多渠道,打包生成apk文件

    原创文章,转载请注明:http://www.cnblogs.com/ycxyyzw/p/4535459.html android 程序打包成apk,如果在是命令行方式,一般都要经过如下步骤: 1.用a ...

  5. android 无法生成R文件的原因剖析

    android 无法生成R文件 是件痛苦的事情,即使有时候你xml文件没有错误,他都无法生成.针对此问题,我总结以下几个方面的原因. 一.xml本身有错误 R.java这个文件是会自动生成的,但是如果 ...

  6. VNPY加密教程(Python生成pyd文件)

    安装成功之后,再修改设置.让Cython可以找到vcarsall.bat.此处有两种方案.(我采用方案1,亲测可用.方案2未测试,看似可用.) 方案1:修改Python安装目录的文件设置 window ...

  7. Python生成pyd文件

    Python的脚本文件是开源的,量化策略的安全性没有保障.因此需要保护源码.那么要对Python代码进行混淆.加密保护. 混淆代码,我准备使用pyminifier.而加密处理,就比较麻烦. Pytho ...

  8. 在js内生成PDF文件并下载的功能实现(不调用后端),以及生成pdf时换行的格式不被渲染,word-break:break-all

    在js内生成PDF文件并下载的功能实现(不调用后端),以及生成pdf时换行的格式不被渲染,word-break:break-all 前天来了个新需求, 有一个授权书的文件要点击下载, 需要在前端生成, ...

  9. JAVA中使用freemark生成自定义文件(json、excel、yaml、txt)

    原文:http://blog.csdn.net/jinzhencs/article/details/51461776 场景:在我们工作中,有时需要生成一些文件,可能它不是一种标准的格式,比如JSON. ...

随机推荐

  1. OracleHelper.cs

    using System;using System.Collections.Generic;using System.Linq;using System.Text; using System.Conf ...

  2. Android开源-NineOldAndroids

    开源地址: https://github.com/JakeWharton/NineOldAndroids 简单介绍:NineOldAndroids是一款支持在低版本号开发的Android动画的框架 包 ...

  3. 开发新手教程【三】Arduino开发工具

    Arduino开发环境搭建 获取Arduino IDE开发工具 下载地址 :http://arduino.cc/en/Main/Software 能够下载release 版.Beta版和前期版本号 A ...

  4. Android显示全局Dialog

    1.需求:Dialog只能依附于某个具体的Activity显示,当我们需要一个全局的不依赖于某个Activity的Dialog时,应该怎么创建?类似于QQ消息提醒框 2.分析:我们可以在Service ...

  5. 《转》最受欢迎的ASP.NET的CMS下载

    1. Umbraco 项目地址 | 下载 Umbraco是一个开放源码的CMS内容管理系统,基于asp.net建立,使用mssql进行存储数据. 使用Umbraco ,设计师能创造出有效的XHTML标 ...

  6. less.js

    在引入你自己的less文件的时候 <link rel="stylesheet/less" href="styles/site.less"> 之后再引 ...

  7. Understanding Tensorflow using Go

    原文: https://pgaleone.eu/tensorflow/go/2017/05/29/understanding-tensorflow-using-go/ Tensorflow is no ...

  8. 在Windows 7 64位下注册ActiveX失败的解决办法

    copy Chart10W.dll  %SystemRoot%\SysWOW64\ copy cellweb5.inf  %SystemRoot%\SysWOW64\ copy hado.dll %S ...

  9. android studio 新建项目 界面一直停在 【“building ‘ 项目名’ gradle project info”】

    安装了android studio 之后,按照上文所述的那篇博文下载安装gradle,配置环境变量, 启动android studio,新建项目,发现还是新建不了,界面一直停在 ["buil ...

  10. 微信支付 301 500 php 7 simplexml_load_string

    w simplexml_load_string http://stackoverflow.com/questions/35593521/php-7-simplexml