欢迎访问移动开发之家(rcyd.net),关注移动开发教程。移动开发之家  移动开发问答|  每日更新
页面位置 : > > > 内容正文

在iOS系统中使用静态链接库

来源: 开发者 投稿于  被查看 24050 次 评论:74

在iOS系统中使用静态链接库


iOS系统中使用静态链接库是本文要介绍的内容,主要是来了解并学习IOS系统静态链接库的应用操作,具体内容来看本文详解。

1、开发iOS系统下静态链接库

打开XCode新建一个项目,选择Library下的“CocoaTouchStaticLibrary”并命名为“EncryptLibrary”。这个新建的静态库项目下除了“EncryptLibrary_Prefix.pch”外没有任何程序文件,在Classes文件夹上点右键选择“NewFile…”,然后在“CocoaTouchClass”下选择“Objective-Cclass”,将源文件命名为“Encrypt.m”,同时选择生成Encrypt.h头文件,可以看到在Classes目录下产生了Encrypt.h和Encrypt.m文件。接着在Encrypt.h头文件里输入以下内容:

  1. #import  
  2. @interfaceEncrypt:NSObject{  

//对明文的用户名和密码进行编码,返回编码后的字符串

  1. +(NSString*)EncryptUserNameAndPassword:(NSString*)strUserNamePassword:(NSString*)strPassword;  
  2. @end 

实现文件Encrypt.m内容如下:

  1. #import"Encrypt.h"  
  2. @implementationEncrypt  
  3. +(NSString*)EncryptUserNameAndPassword:(NSString*)strUserNamePassword:(NSString*)strPassword  
  4. {  
  5. NSString*strEncrypted=[NSStringstringWithFormat:@"UserName:%@,Password:%@",strUserName,strPassword];  
  6. ReturnstrEncrypted;  
  7. }  
  8. @end 

这里提供了一个对明文的用户名和密码进行编码的函数。至此,这个静态函数库已经编写完毕,编译这个程序会看到在Products目录下产生了名为“libEncryptLibrary.a”的静态库文件。

2、新建项目测试上面开发的静态链接库

新建一个“Window-basedApplication”项目并命名为“EncryptLibraryTest”,下面演示如何在这个新项目里利用前面生成的静态库libEncryptLibrary.a文件。

首先打开Finder,将上面编译生成的libEncryptLibrary.a文件复制到EncryptLibraryTest.xcodeproj同级目录,将Encrypt.h复制到EncryptLibraryTest.xcodeproj同级目录的Classes文件夹下面,在Xcode中右键点Frameworks->Add->ExistingFiles..添加刚才复制的libEncryptLibrary.a文件,接下来使用静态库中的函数,如下:

  1. #import  
  2. #import"Encrypt.h"  
  3. @interfaceEncryptLibraryTestAppDelegate:NSObject{  
  4. UIWindow*window;  
  5. }  
  6. @property(nonatomic,retain)IBOutletUIWindow*window;  
  7. @end 

修改相应的实现文件如下:

  1. #import"EncryptLibraryTestAppDelegate.h"  
  2. @implementationEncryptLibraryTestAppDelegate  
  3. @synthesizewindow;  
  4. -(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions{  
  5. //Overridepointforcustomizationafterapplaunch.  
  6. [self.windowaddSubview:viewController.view];  
  7. [self.windowmakeKeyAndVisible];  
  8. NSString*strUserName=@”caijinhui”;  
  9. NSString*strPassWord=@”password”;  
  10. NSString*strEncrypted=[EncryptEncryptUserNameAndPassword:strUserNamePassword:strPassWord];  
  11. NSLog(@”%@”,strEncrypted);  
  12. returnYES;  
  13. }  
  14. -(void)dealloc{  
  15. [windowrelease];  
  16. [superdealloc];  
  17. }  
  18. @end 

编译一下,顺利通过,在Console输出编码后的字符串。

提示:因为本文档是用Office2007写的,所以在Mac系统下用文本编辑器打开,会出现部门不正常字符,特别是程序中一些双引号,若编译出错,请更改相关双引号。

小结:在iOS系统中使用静态链接库的内容介绍完了,希望通过IOS系统链接库的应用内容的学习能对你有所帮助。

用户评论