ard.io开源的银行卡扫描的三方库真的是很好用啊。

首先需要在你的module的gradle的依赖文件中添加依赖

compile 'io.card:android-sdk:5.5.1'

2 清单文件中加入如下Activity

android:name="io.card.payment.CardIOActivity"

android:configChanges="keyboardHidden|orientation" />

3 xml文件中

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

tools:context="com.example.dell.scanbankdemo.MainActivity">

android:id="@+id/btn_scan"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="扫描银行卡" />

android:id="@+id/tv_card_number"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="银行卡号:"

/>

全部代码:

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

public static final int MY_SCAN_REQUEST_CODE = 10;

private Button mScanBtn;

private TextView mNumberTv;//银行卡号

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

mScanBtn = findViewById(R.id.btn_scan);

mScanBtn.setOnClickListener(this);

mNumberTv = findViewById(R.id.tv_card_number);

}

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.btn_scan:

Intent scanIntent = new Intent(this, CardIOActivity.class);

// customize these values to suit your needs.

scanIntent.putExtra(CardIOActivity.EXTRA_REQUIRE_EXPIRY, true); // default: false

scanIntent.putExtra(CardIOActivity.EXTRA_REQUIRE_CVV, false); // default: false

scanIntent.putExtra(CardIOActivity.EXTRA_REQUIRE_POSTAL_CODE, false); // default: false

// MY_SCAN_REQUEST_CODE is arbitrary and is only used within this activity.

startActivityForResult(scanIntent, MY_SCAN_REQUEST_CODE);

break;

}

}

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);

if (requestCode == MY_SCAN_REQUEST_CODE) {

String resultDisplayStr;

if (data != null && data.hasExtra(CardIOActivity.EXTRA_SCAN_RESULT)) {

CreditCard scanResult = data.getParcelableExtra(CardIOActivity.EXTRA_SCAN_RESULT);

// Never log a raw card number. Avoid displaying it, but if necessary use getFormattedCardNumber()

//resultDisplayStr = "银行卡号: " + scanResult.getRedactedCardNumber() + "\n"; //只显示尾号

resultDisplayStr = "银行卡号: " + scanResult.getFormattedCardNumber() + "\n"; //显示银行卡号

// Do something with the raw number, e.g.:

// myService.setCardNumber( scanResult.cardNumber );

if (scanResult.isExpiryValid()) {

resultDisplayStr += "有效期:" + scanResult.expiryMonth + "/" + scanResult.expiryYear + "\n";

}

if (scanResult.cvv != null) {

// Never log or display a CVV

resultDisplayStr += "CVV has " + scanResult.cvv.length() + " digits.\n";

}

if (scanResult.postalCode != null) {

resultDisplayStr += "Postal Code: " + scanResult.postalCode + "\n";

}

} else {

resultDisplayStr = "Scan was canceled.";

}

mNumberTv.setText(resultDisplayStr);

// do something with resultDisplayStr, maybe display it in a textView

// resultTextView.setText(resultDisplayStr);

}

}

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持找一找教程网。

android获取卡号号码,Android银行卡扫描获取银行卡号相关推荐

  1. C# 服务端(API)连接 安卓设备 读取 IC卡(仅读取ID),RFID卡(包含ID卡),获取卡号(10进制)

    处理安卓设备NFC读卡 C#WebAPI做服务端 APP使用 uni-app开发, 走了不少弯路,这里记录一下 获取 卡10进制ID的方法 商米POS.安卓移动设备(手机)通过NFC功能 读取 IC卡 ...

  2. Android 银行卡扫描识别获取卡号

    用card.io 实现的银行卡扫描,免费 Card.io是让手机摄像头获取信用卡的信息,中间利用了OCR(光学字符识别)的扫描技术返回结果,它还推出了SDK(软件开发包),让开发者们可以把card.i ...

  3. android通过sim卡获取本机号码,Android获取本机号码及Sim卡状态

    SIM卡存储的数据可分为四类: 第一类是固定存放的数据.这类数据在移动电话机被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMSI).鉴权密钥(KI).鉴权和加密算法等等. 第二类是暂时存放的 ...

  4. Android 串口通讯 获取卡号

    首先你的andoridstudio 需要配置ndk 环境 然后在去下载谷歌的的demo 下载地址 把这些直接复制到代码中 一般  jni C语言调用java 是指定包名调用的 所有android_se ...

  5. android 查找所有的串口,Android 串口通讯 获取卡号

    首先你的andoridstudio 需要配置ndk 环境 然后在去下载谷歌的的demo 下载地址 把这些直接复制到代码中 一般  jni C语言调用java 是指定包名调用的 所有android_se ...

  6. 安卓扫描银行卡获取卡号信息

    不得不说card.io开源的银行卡扫描的三方库真的是很好用啊,非常稀饭,使用简单,而且给你提供的API很多,满足大部分的需要(反正是满足我的各种需求了) 首先上一个效果图 1 对准银行卡的四角就能够扫 ...

  7. 扫描NFC卡,获取卡号存储到本地并可以以Excel形式导出数据

    这是一个使用支持NFC的手机扫描NFC射频卡获取到卡号,使用greenDao数据库做本地存储,扫完之后可以将数据以Excel表格形式导出查看数据.不是什么新技术,内容比较简单,这里就主要贴源码了,没有 ...

  8. Android获取本机号码(双卡双待无法获取两个号码)

    搞了一个想获取Android手机的本机号码的功能,但是发现双卡双待的手机是无法获取到两个号码 的.在Android的官方文档是没有提供相应的Api的,因为标准的Andoird是没有双卡的,好像也只有国 ...

  9. android sd卡列目录文件_Android正确获取SD卡目录及使用SD卡目录

    此文乃是转载,原文在这里链接 SD卡作为手机的扩展存储设备,在手机中充当硬盘角色,可以让我们手机存放更多的数据以及多媒体等大体积文件.因此查看SD卡的内存就跟我们查看硬盘的剩余空间一样,是我们经常操作 ...

最新文章

  1. layUI 学习记录
  2. 基本算法--冒泡排序
  3. OpenStack(四)——Nova组件
  4. AndroidManifest详解
  5. 32g内存 android开发,16G走开 我要32G内存的安卓手机
  6. JAVA两个视图层_MVC - 管理帐户 . 一个视图有两个局部视图和两个模型
  7. Oracle数据库只读事务和无事务的区别
  8. date用法linux,date用法心得
  9. Ajax学习笔记-请求参数的格式-5
  10. VS2017 离线安装包下载
  11. 上拉查看详情和下拉隐藏详情
  12. 吉他基本功练习原理及方法
  13. PyTorch 音频处理教程
  14. buu刷题日记 asis2016_b00ks
  15. DA转换器原理及应用(报告)
  16. 业务流程图怎么画?一篇文章看懂
  17. Word转图片(使用Spire.doc)
  18. bug的严重程度级别,bug的定义
  19. 公钥加密、数字签名、消息认证
  20. 同时校验手机号和座机号

热门文章

  1. 用友 传入的 json 格式无效_用友网络股吧:被错杀的半导体材料龙头,全年或60%高增长,刚刚走出黄金坑...
  2. 创建物化视图commit_oracle 中物化视图讲解
  3. es任务 如何kill_kill进程的方法
  4. Mysql默认密码的查找和修改
  5. jvm两种方式获取对象所占用的内存
  6. 通过RunLoop监听主线程的卡顿
  7. 高逼格UILabel的闪烁动画效果
  8. Linux命令行文本处理工具
  9. linux centos php5.3 安装curl扩展
  10. Excel 2007 (Excel.Application) Workbooks.Add 出现内存不够的解决办法