首先在github上下載ZBar SDK
地址https://github.com/bmorton/ZBarSDK
然后將如下的相關(guān)類庫添加進(jìn)去
AVFoundation.framwork, CoreMedia.framework, CoreVideo.framework, libiconv.dylib 和libzbar.a
接下來首先在.h文件中引用
#import"ZBarSDK.h"
同時(shí)添加代理
ZBarReaderDelegate
然后在.m文件中添加如下代碼
```objc
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent*)event
{
ZBarReaderViewController*reader = [[ZBarReaderViewControlleralloc]init];
reader.readerDelegate=self;
ZBarImageScanner*scanner = reader.scanner;
[scannersetSymbology:ZBAR_I25config:ZBAR_CFG_ENABLEto:0];
[selfpresentViewController:readeranimated:YEScompletion:nil];
}
- (void)imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
NSLog(@"info=%@",info);
//得到條形碼結(jié)果
id results =[infoobjectForKey:ZBarReaderControllerResults];
ZBarSymbol*symbol =nil;
for(symbolinresults)
break;
UIAlertView*alert=[[UIAlertViewalloc]initWithTitle:@"信息提示!"message:symbol.datadelegate:selfcancelButtonTitle:@"取消"otherButtonTitles:@"確定",nil];
[alertshow];
}
```
點(diǎn)擊屏幕就可以調(diào)用啦弧烤!
注 --- ? iOS 二維碼掃描 zBarsdk 不支持64位 missing required architecture x86_64 in file
ZBar在64位下會報(bào)錯(cuò),大概意思就是不支持64位蹬敲,實(shí)際上ios7以上是支持原生api掃描二維碼的暇昂,所以我覺得這就是為什么zbarsdk沒有繼續(xù)更新的原因。
百度一下伴嗡,說修改架構(gòu)什么的還是有的急波,但貌似沒說到點(diǎn)子上,還是老外的解決方法牛逼瘪校。
第一:問題的提出澄暮,給了很多解決方法:
http://stackoverflow.com/questions/12506671/zbar-sdk-is-not-working-in-ios6/12753812#12753812
stackoverflow的方法還是不錯(cuò)的名段。
這個(gè)也不錯(cuò):http://www.federicocappelli.net/2012/10/05/zbar-library-for-iphone-5-armv7s/
第二:樓主發(fā)現(xiàn)的最好方法:
http://blog.diogot.com/blog/2013/09/18/static-libs-with-support-to-ios-5-and-arm64/
對應(yīng)的作者工程:https://github.com/diogot/StaticLibDemo
這里有個(gè)好心人弄好了以供下載:
http://download.csdn.net/detail/zyq527758142/8428825
我直接下載最后這個(gè)修改版的SDK,替換了就可以了泣懊,不用設(shè)置其他麻煩的事兒伸辟,集成方式一樣,再把bit code關(guān)掉就行馍刮!