a静态库教程,a静态库步骤4887王中王鉄算盘奖结

来源:http://www.smjxgs.com 作者:操作系统 人气:90 发布时间:2019-08-08
摘要:iOS开发中打包.a静态库教程,ios.a 1.新建.a静态库工程 需要选择Static Library静态库工程模板新建工程,如下图: 新建静态库工程 实现需要打包的类,如下图: 实现需要打包的类 2.设置需

iOS开发中打包.a静态库教程,ios.a

1.新建.a静态库工程
需要选择Static Library静态库工程模板新建工程,如下图:
4887王中王鉄算盘奖结果 1
新建静态库工程

实现需要打包的类,如下图:
4887王中王鉄算盘奖结果 2

实现需要打包的类
2.设置需要暴露的头文件
添加Headers, 步骤为:TARGET->Build Phases ->点 号->New Headers Phase,如下图:
4887王中王鉄算盘奖结果 3

然后找到Heaers(0 items)一栏, 点 号添加头文件, 如下图:
4887王中王鉄算盘奖结果 4

接着添加需要公开的头文件Encryption.h, 如下图:
4887王中王鉄算盘奖结果 5

添加完成后, Encryption.h会出现在Project一栏中, 需要手动拖入Public一栏中进行公开, 如下图:
4887王中王鉄算盘奖结果 6

拖入后, Public中的头文件就是公开的头文件了, 如下图:
4887王中王鉄算盘奖结果 7

3.设置Scheme
选择Edit Scheme,如下图:
4887王中王鉄算盘奖结果 8

选择Debug模式,如下图:
4887王中王鉄算盘奖结果 9

4.编译模拟器版本的.a静态库
选择模拟器,如下图:
4887王中王鉄算盘奖结果 10

选择模拟器后开始编译,编译成功后,Products中的libEncryption.a会由红色变为黑色,如下图:
4887王中王鉄算盘奖结果 11

5.编译真机版本的.a静态库
选择真机,如下图:
4887王中王鉄算盘奖结果 12

选择真机后开始编译,编译成功后,Products中的libEncryption.a也会由红色变为黑色.

6.合并模拟版本和真机版本的静态库
选择libEncryption.a,右键选择Show in Finder,如下图:
4887王中王鉄算盘奖结果 13

进入Finder后,可以看到编译后的模拟器和真机版本的.a静态库,如下图:
4887王中王鉄算盘奖结果 14

打开终端,使用命令行进行版本合并,具体格式为:

lipo -create "真机版本.a静态库路径" "模拟器版本.a静态库路径" -output "合并后的.a静态库路径"
注意中间要有空格.
在终端中输入命令行,如下图:
4887王中王鉄算盘奖结果 15

终端执行成功后会生成一个合并版本的.a静态库,如下图:
4887王中王鉄算盘奖结果 16

7.测试静态库

新建工程,将libEncryption.a和Encryption.h文件拖入工程,如下图:

4887王中王鉄算盘奖结果 17

在ViewController.m引入Encryption.h头文件,调用Encryption.h暴露出来的加密方法,ViewController.m中代码如下:

#import "ViewController.h"
#import "Encryption.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
[super viewDidLoad];

//调用Encryption中的加密方法
NSLog(@"-----%@", [Encryption md5EncryptWithString:@"hello"]);

}

- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

@end

调试窗口成功输出打印信息,如下图:
4887王中王鉄算盘奖结果 18
至此,.a静态库制作完毕!

1.新建.a静态库工程 需要选择Static Library静态库工程模板新建工程,如下图: 新建静态库工程 实现需要打...

1.新建.a静态库工程
需要选择Static Library静态库工程模板新建工程,如下图:
4887王中王鉄算盘奖结果 19
新建静态库工程

打包静态库流程
1.创建静态库
2.实现类
3.公开.h文件
4.打包模拟器静态库
5.打包真机静态库
6.合并模拟器 和 真机 静态库
7.测试静态库

实现需要打包的类,如下图:
4887王中王鉄算盘奖结果 20

一、前期工作
1、新建.a静态库工程
4887王中王鉄算盘奖结果 21
2、实现需要打包的类
4887王中王鉄算盘奖结果 22
3、添加Headers
4887王中王鉄算盘奖结果 23
4、然后找到Heaers(0 items)一栏,点 号 添加头文件
4887王中王鉄算盘奖结果 24
5、接着添加需要公开的头文件
4887王中王鉄算盘奖结果 25
6、添加完之后,头文件会出现在Project一栏中,需要手动推入Public一栏进去公开
4887王中王鉄算盘奖结果 26
7、拖入之后,Public中的头文件就是公开的头文件
4887王中王鉄算盘奖结果 27
二、设置Scheme
1、选择Edit Scheme
4887王中王鉄算盘奖结果 28
4887王中王鉄算盘奖结果 29
2、编译模拟器版本的.a静态库。选择模拟器
4887王中王鉄算盘奖结果 30
3、选择模拟器后开始编译,编译成功后,Products中的libEncryption.a会有红色变为黑色
4887王中王鉄算盘奖结果 31
4、编译真机版本的.a静态库。选择真机
4887王中王鉄算盘奖结果 32

实现需要打包的类
2.设置需要暴露的头文件
添加Headers, 步骤为:TARGET->Build Phases ->点 号->New Headers Phase,如下图:
4887王中王鉄算盘奖结果 33

三、合并模拟版本和这几版本的静态库
1、选择libEncryption.a,右键选择 show in Finder
4887王中王鉄算盘奖结果 34
2、进入文件夹目录后 可以看到编译后的模拟器 和 真机版本的.a静态文件
4887王中王鉄算盘奖结果 35
3、打开终端,使用命令进去版本合并,具体格式为

然后找到Heaers(0 items)一栏, 点 号添加头文件, 如下图:
4887王中王鉄算盘奖结果 36

lipo -create "真机版本.a静态库路径" "模拟器版本.a静态库路径" -output "合并后的.a静态库路径”

接着添加需要公开的头文件Encryption.h, 如下图:
4887王中王鉄算盘奖结果 374887王中王鉄算盘奖结果,

  • 1

添加完成后, Encryption.h会出现在Project一栏中, 需要手动拖入Public一栏中进行公开, 如下图:
4887王中王鉄算盘奖结果 38

四、最后可以测试下静态库
1、把编辑好的静态库 和 .h文件拖入工程中
4887王中王鉄算盘奖结果 39

拖入后, Public中的头文件就是公开的头文件了, 如下图:
4887王中王鉄算盘奖结果 40

以上就是打包静态库的整个流程

3.设置Scheme
选择Edit Scheme,如下图:
4887王中王鉄算盘奖结果 41

参考链接:

选择Debug模式,如下图:
4887王中王鉄算盘奖结果 42

4.编译模拟器版本的.a静态库
选择模拟器,如下图:
4887王中王鉄算盘奖结果 43

选择模拟器后开始编译,编译成功后,Products中的libEncryption.a会由红色变为黑色,如下图:
4887王中王鉄算盘奖结果 44

5.编译真机版本的.a静态库
选择真机,如下图:
4887王中王鉄算盘奖结果 45

选择真机后开始编译,编译成功后,Products中的libEncryption.a也会由红色变为黑色.

6.合并模拟版本和真机版本的静态库
选择libEncryption.a,右键选择Show in Finder,如下图:
4887王中王鉄算盘奖结果 46

进入Finder后,可以看到编译后的模拟器和真机版本的.a静态库,如下图:
4887王中王鉄算盘奖结果 47

打开终端,使用命令行进行版本合并,具体格式为:

lipo -create "真机版本.a静态库路径" "模拟器版本.a静态库路径" -output "合并后的.a静态库路径"
注意中间要有空格.
在终端中输入命令行,如下图:
4887王中王鉄算盘奖结果 48

终端执行成功后会生成一个合并版本的.a静态库,如下图:
4887王中王鉄算盘奖结果 49

7.测试静态库

新建工程,将libEncryption.a和Encryption.h文件拖入工程,如下图:

4887王中王鉄算盘奖结果 50

在ViewController.m引入Encryption.h头文件,调用Encryption.h暴露出来的加密方法,ViewController.m中代码如下:

#import "ViewController.h"

#import "Encryption.h"



@interface ViewController ()



@end



@implementation ViewController



- (void)viewDidLoad {

[super viewDidLoad];



//调用Encryption中的加密方法

NSLog(@"-----%@", [Encryption md5EncryptWithString:@"hello"]);



}



- (void)didReceiveMemoryWarning {

[super didReceiveMemoryWarning];

// Dispose of any resources that can be recreated.

}



@end

调试窗口成功输出打印信息,如下图:
4887王中王鉄算盘奖结果 51
至此,.a静态库制作完毕!

本文由4887王中王鉄算盘奖结果发布于操作系统,转载请注明出处:a静态库教程,a静态库步骤4887王中王鉄算盘奖结

关键词:

上一篇:封装SDK以及包装时bundle文件的拍卖

下一篇:没有了

最火资讯