我可以使用card.io获取信用卡扫描图像吗?

时间:2012-11-07 07:35:27

标签: card.io

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

2 个答案:

答案 0 :(得分:5)

来自card.io的Josh在这里。 card.io is open source,所以你可以挖掘并找出如何取出图像。

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

答案 1 :(得分:0)

在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,您将获得该图像。