关于使用 zxing 识别二维码还是很简单的,导入 zxing 后,一句 intent 跳转就可以了。那么如何用 zxing 生成二维码呢?其实也不难。
我导入的是 zxing-core 依赖包。代码如下:
try {
MultiFormatWriter multiFormatWriter = new MultiFormatWriter();
BitMatrix result = multiFormatWriter.encode("Hello RQ_code!", BarcodeFormat.QR_CODE, 200, 200);
int width = result.getWidth();
int height = result.getHeight();
int[] pixels = new int[width * height];
for (int y = 0; y < height; y++) {
int offset = y * width;
for (int x = 0; x < width; x++) {
pixels[offset + x] = result.get(x, y) ? Color.BLACK : Color.WHITE;
}
}
Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);// 可能会太占内存
bitmap.setPixels(pixels, 0, 100, 0, 0, width, height);
生成了 二维码 的 bitmap
ARGB.8888 可不是小的内存呀,如果需要多个这样的就崩了,所以需要及时的释放掉 bitmap。下面的代码添在后面就可以了:
bitmap.recycle();
bitmap = null; // 其实这句已经是废话了,习惯性的