通过扫描银行卡,获取银行卡号,在网上搜过后,选用了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
    *
    代码说明:
    开始触发扫描

- (IBAction)BeginActionCardID:(id)sender {CardIOPaymentViewController *scanViewController = [[CardIOPaymentViewController alloc] initWithPaymentDelegate:self];scanViewController.modalPresentationStyle = UIModalPresentationFormSheet;[self presentViewController:scanViewController animated:YES completion:nil];
}

代理方法

#pragma mark - CardIOPaymentViewControllerDelegate
//扫描完成
- (void)userDidProvideCreditCardInfo:(CardIOCreditCardInfo *)info inPaymentViewController:(CardIOPaymentViewController *)paymentViewController {NSLog(@"Scan succeeded with info: %@", info);// Do whatever needs to be done to deliver the purchased items.[self dismissViewControllerAnimated:YES completion:nil];self.infoLabel.text = [NSString stringWithFormat:@"Received card info. Number: %@, expiry: %02lu/%lu, cvv: %@.", info.redactedCardNumber, (unsigned long)info.expiryMonth, (unsigned long)info.expiryYear, info.cvv];
}
//用户取消扫描
- (void)userDidCancelPaymentViewController:(CardIOPaymentViewController *)paymentViewController {NSLog(@"User cancelled scan");[self dismissViewControllerAnimated:YES completion:nil];
}
- (void)viewWillAppear:(BOOL)animated {[super viewWillAppear:animated];[CardIOUtilities preload];
}

遇到的问题解决方法:
1、遇到很多的错误,但是大多数都是没有导入依赖库,但是当全部导入依赖库后,还是会报错,而且错误达到了20多个,这个就得需要设置了,看下列解决方案。

这么多看着就是揪心的,下面就是解决方法。

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

2、问题解决了,但是会在点击调用相机的时候会崩溃,又得解决问题;
下面是打印的奔溃日志:

从奔溃日志里面可以看到解决的方法;

在TARGETS-Build Settings添加 -ObjC 到Other Linker Flags

就这样就ok了

IOS 之扫描银行卡号DEMO相关推荐

  1. 插件代码_我们开源了一款 SonarQube iOS 代码扫描插件

    背景: 我们在公司(好未来)内部开发了一套基于 SonarQube 的静态代码扫描服务,得益于 SonarQube 开源版本本身的功能,我们可以直接复用支持主流的编程语言,但 SonarQube 的开 ...

  2. iOS 开发 - 播放器Demo开发记录

    iOS 开发 - 播放器Demo开发记录 标签: ios 2014-12-22 14:14 518人阅读 评论(0) 收藏 举报  分类: Mac OS X(50)  版权声明:本文为博主原创文章,未 ...

  3. iOS手机扫描识别名片技术

    iOS手机扫描识别名片技术SDK 一.iOS手机扫描识别名片技术应用背景 这些年,随着移动互联的发展,APP应用成爆发式的增长,在很多APP中都涉及到对名片信息的录入,如移动CRM.移动端OA,移动访 ...

  4. SonarQube iOS 代码扫描插件(Objective-C/Swift/Infer/sonar-swift)

    仓库地址:https://github.com/tal-tech/sonar-swift 欢迎 Star. 介绍 静态代码扫描是一种检测项目代码的方式,能够在不运行代码的情况下对代码进行扫描,可以扫描 ...

  5. 想用二维码推广应用,如何保证 Andriod 用户和 iOS 用户扫描同一个二维码后获得相应的 App ?

    想用二维码推广应用,如何保证 Andriod 用户和 iOS 用户扫描同一个二维码后获得相应的 App ? 这个问题纠结了好些天,后来想到的办法是:把桥页地址生成二维码,扫描后跳到桥页,在桥页判断平台 ...

  6. iOS中 扫描二维码/生成二维码详解

    最近大家总是问我有没有关于二维码的demo,为了满足大家的需求,特此研究了一番,希望能帮到大家! 指示根视图: ? 1 self.window.rootViewController = [[UINav ...

  7. ffmpeg for iOS,并调试iFrameExtractor demo

    说明:本文部分内容参考互联网,亲自调整测试. 测试视频地址:http://livecdn.cdbs.com.cn/fmvideo.flv (MBD,cnblogs上传图片功能都不能用了,还去sina ...

  8. iOS 开发--github的demo

    令人惊讶的是,YYText 虽然代码量很大(超过一万行),但它只是 ibireme 的作品之一.ibireme 利用业余时间完成了 YYKit 工具库,包括: YYModel - 高性能的 iOS J ...

  9. iOS - Card Identification 银行卡号识别

    1.CardIO 识别 框架 GitHub 下载地址 配置 1.把框架整个拉进自己的工程,然后在 TARGETS => Build Phases => Link Binary With L ...

最新文章

  1. 结构感知图像修复:ICCV2019论文解析
  2. log函数 oracle power_数学函数
  3. Xamarin XAML语言教程构建进度条ProgressBar
  4. java rtmp m3u8_vue常用插件之视频播放(rtmp m3u8)
  5. Spring Annotations我从没有机会使用第2部分:@ConfigurationProperties
  6. centos mysql pid_centos7 mysql The server quit without updating PID file(错误解决)
  7. php 查看磁盘挂载,linux如何查看磁盘使用情况
  8. Servlet超详解+流程图
  9. 如何正确使用广告素材、优化Facebook广告
  10. 自动驾驶 6-4 高级转向控制 - MPC Advanced Steering Control - MPC
  11. 糖豆人终极淘汰赛服务器维护,糖豆人终极淘汰赛常见问题解决方法一览 糖豆人终极淘汰赛常见问题解决方法汇总...
  12. ASP.net 密码加密和使用密码登录
  13. 安装nginx,php8,nfs,oralce19c客户端
  14. 【数据库】一篇文章搞掂:Oracle数据库
  15. vs 设置护眼背景颜色
  16. 计算机网络 划分子网构造超网
  17. linux服务器集群群发邮件,爱博邮件群发服务器(Linux版本)
  18. html表单验证方法,简述HTML交互式表单验证方法
  19. nrf52840开发笔记(一)------开发环境搭建
  20. poi画饼图、折线图等图表和设置颜色字体等

热门文章

  1. android ApplicationInfo类
  2. iOS14 内购(IAP) applicationUsername 获取订单号为nil
  3. Java证书哪个含金量高?
  4. 如何用pytorch做文本摘要生成任务(加载数据集、T5 模型参数、微调、保存和测试模型,以及ROUGE分数计算)
  5. python中的二维数组与一维数组,矩阵和一维数组之间的运算
  6. wait_event
  7. 用Java语言计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值
  8. 神之编辑器Emacs 编辑器之神Vim
  9. 2018年3月十大好玩的CODE PEN
  10. uniapp 沉浸式状态栏