【问题标题】:Can I get the credit card scanned image using card.io我可以使用 card.io 获取信用卡扫描图像吗
【发布时间】:2012-10-27 05:41:45
【问题描述】:

我刚刚将 card.io SDK 与我的应用程序集成,我只是想保存扫描的信用卡图像以便稍后在我的应用程序中显示它们,就像其他钱包应用程序一样。有什么办法吗?

【问题讨论】:

  • 您找到保存扫描图像的方法了吗?如果是,请分享答案

标签: card.io


【解决方案1】:

来自 card.io 的 Josh 在这里。 card.io is open source,所以您可以四处挖掘并弄清楚如何将图像取出。

但是,默认情况下它是隐藏的,原因很充分。一是用户隐私。另一个是 PCI 合规性 - CVV2 位于 AmEx 卡的正面,不允许存储 CVV2(任何地方,无论是否安全)。

【讨论】:

  • 谢谢 Josh,但柠檬.com 的钱包应用程序在验证后显示卡片。那么,您能建议我如何实现这样的行为吗?
  • @FaisalBasra Lemon 与我们有特别优惠;他们是祖父。我绝对理解你的愿望,我们将来可能会揭露它。抱歉,您现在无法使用。
  • 乔希,你有没有机会像图片的前 1/3 左右一样返回?那将是一个很好的补充。大多数情况下,这是卡片的一部分,它提供了关于它是哪张卡片的足够信息。 (您可能需要模糊美国运通卡上的 CVV。)谢谢。
  • @JoshBleecherSnyder 根据这个问题是否有任何变化:我可以获得扫描图像吗?
  • @JoshBleecherSnyder iOS SDK 上是否对此有任何更改?
【解决方案2】:

card.io 代码中不支持它,但如果你真的需要它,你可以在 CardIOActivity.java 的 onActivityResult 中添加以下代码

        /* added image response */
        Intent origIntent = getIntent();
        Log.d(TAG, "[IMGCAP] Return image on scan request");
        if (origIntent.getBooleanExtra(EXTRA_RETURN_CARD_IMAGE, false)
              && mOverlay != null && mOverlay.getBitmap() != null) {

            ByteArrayOutputStream scaledCardBytes = new ByteArrayOutputStream();
            Log.d(TAG, "[IMGCAP] Attempting return of image");
            mOverlay.getBitmap().compress(Bitmap.CompressFormat.JPEG, 80, scaledCardBytes);
            data.putExtra(EXTRA_CAPTURED_CARD_IMAGE, scaledCardBytes.toByteArray());
        }
        Log.d(TAG, "[IMGCAP] Set result with return image");
        /************************************/

        setResultAndFinish(resultCode, data);

就在您看到发送回活动结果的调用之前。您可以在呼叫活动中接收。 但正如上面的答案中提到的,它不建议捕获卡图像。对于非金融卡,您只能调用检测和抑制扫描,如果您启用 EXTRA_RETURN_CARD_IMAGE,您将获得该图像。

【讨论】:

    猜你喜欢
    • 2015-11-09
    • 1970-01-01
    • 1970-01-01
    • 2017-05-18
    • 2013-11-19
    • 2013-07-31
    • 2017-11-26
    • 2013-06-05
    • 1970-01-01
    相关资源
    最近更新 更多