BGAQRCode-Android icon indicating copy to clipboard operation
BGAQRCode-Android copied to clipboard

相册扫码稍微长一点的图就识别不出来,其他框架可以扫出来,大佬可以加我478104175给你看下

Open Xxj-star opened this issue 4 years ago • 3 comments

Xxj-star avatar Jul 15 '20 02:07 Xxj-star

原因是cn.bingoogolapple.qrcode.core.BGAQRCodeUtil中public static Bitmap getDecodeAbleBitmap(String picturePath)方法内部对图片进行了压缩,导致失败失败,可以将下面int sampleSize = options.outHeight / 400;中sampleSize值改小点就可以了 public static Bitmap getDecodeAbleBitmap(String picturePath) { try { BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeFile(picturePath, options); int sampleSize = options.outHeight / 400; if (sampleSize <= 0) { sampleSize = 1; } options.inSampleSize = sampleSize; options.inJustDecodeBounds = false;

        return BitmapFactory.decodeFile(picturePath, options);
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

Henry519 avatar Jan 29 '21 09:01 Henry519

原因是cn.bingoogolapple.qrcode.core.BGAQRCodeUtil中public static Bitmap getDecodeAbleBitmap(String picturePath)方法内部对图片进行了压缩,导致失败失败,可以将下面int sampleSize = options.outHeight / 400;中sampleSize值改小点就可以了 public static Bitmap getDecodeAbleBitmap(String picturePath) { try { BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true; BitmapFactory.decodeFile(picturePath, options); int sampleSize = options.outHeight / 400; if (sampleSize <= 0) { sampleSize = 1; } options.inSampleSize = sampleSize; options.inJustDecodeBounds = false;

        return BitmapFactory.decodeFile(picturePath, options);
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

我尝试了 修改这个方法,但是相册打开二维码还是扫码失败 大哥,你确定改正方法能用吗?

ILoveLin avatar May 11 '23 01:05 ILoveLin

您好,我已收到您的邮件,我会尽快给您回复。

wscjy avatar May 11 '23 01:05 wscjy