iOS:card.io使用

   最近项目要用到一个功能:通过扫描银行卡,获取银行卡号,在网上搜过后,选用了card.io这个SDK,过程如下:

(1)下载Card.io

      Card.io是让手机摄像头获取信用卡的信息,中间利用了OCR(光学字符识别)的扫描技术返回结果,它还推出了SDK(软件开发包),让开发者们可以把card.io添加到自己的应用当中。可以在https://github.com/paypal/PayPal-iOS-SDK下载最新的SDK

(2)添加到项目里

    1、将下载的SDK包里名为CardIO的文件拖到工程里,在TARGETS-Build Phases - Link Binary With Librarys添加下面依赖库

     * AudioToolbox 

     * AVFoundation

     * CoreGraphics

     * CoreMedia

     * CoreVideo

     * Foundation

     * MobileCoreServices

     * OpenGLES

     * QuartzCore

     * Security

     * UIKit

如果是xcode5或者更新的版本,只需要添加下面的库

    * AVFoundation

    * AudioToolbox

    * CoreMedia

    * MobileCoreServices

    并且保证Build Settings里面这两项都是YES:

    * Enable Modules (C and Objective-C)

    * Link Frameworks Automatically



2、在TARGETS-Build Settings添加 -lc++Other Linker Flags

(3)使用

我是把它作为一个viewController类使用

代码:

导入

#import "CardIO.h"

#import "CardIOPaymentViewControllerDelegate.h"



- (void)viewWillAppear:(BOOL)animated {

  [super viewWillAppear:animated];

  [CardIOUtilities preload];

}

//开始扫描

- (IBAction)scanCard:(id)sender

 {

  CardIOPaymentViewController *scanViewController = [[CardIOPaymentViewController alloc] initWithPaymentDelegate:self];

  [self presentViewController:scanViewController animated:YES completion:nil];

}

下面是代理方法

//取消扫描

- (void)userDidCancelPaymentViewController:(CardIOPaymentViewController *)scanViewController 

{

  NSLog(@"User canceled payment info");

  // Handle user cancellation here...

  [scanViewController dismissViewControllerAnimated:YES completion:nil];

}

//扫描完成

-(void)userDidProvideCreditCardInfo:(CardIOCreditCardInfo *)info inPaymentViewController:(CardIOPaymentViewController *)scanViewController 

{

  //扫描结果

  NSLog(@"Received card info. Number: %@, expiry: %02i/%i, cvv: %@.", info.redactedCardNumber, info.expiryMonth, info.expiryYear, info.cvv);

  // Use the card info...

  [scanViewController dismissViewControllerAnimated:YES completion:nil];

}





郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。