zxing-android 라이브러리를 이용한 QR 코드 생성

android 에서 QR코드를 생성하는 하는 법을 알아 보도록 하겠습니다.


compile 'com.journeyapps:zxing-android-embedded:3.5.0'
build.gradle의 dependencies에 zxing라이브러리를 추가 합니다.


QR코드는 숫자 최대 7089 자, 영문자와 숫자[코드표가 따로 존재] 최대 4296 자, 8비트 바이트 최대 2953 바이트, 한자 1817 자를 담을 수 있습니다. 문자열을 받아와 QR코드를 생성 해보겠습니다.
 
public static Bitmap generateQRCode(String contents) {
        Bitmap bitmap = null;

        try {
            QRCodeWriter qrCodeWriter = new QRCodeWriter();
            bitmap = toBitmap(qrCodeWriter.encode(contents, BarcodeFormat.QR_CODE, 200, 200));
        } catch (WriterException e) {
            e.printStackTrace();
        }

        return bitmap;
    }

    private static Bitmap toBitmap(BitMatrix matrix) {
        int height = matrix.getHeight();
        int width = matrix.getWidth();
        Bitmap bmp = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
        for (int x = 0; x < width; x++) {
            for (int y = 0; y < height; y++) {
                bmp.setPixel(x, y, matrix.get(x, y) ? Color.BLACK : Color.WHITE);
            }
        }
        return bmp;
    }
1) QRcodeWriter 객체를 생성합니다.
2) QR코드에 들어갈 문자정보, 바코드포맷, QR코드 가로사이즈, QR코드 세로사이즈 셋팅
3) Bitmap 생성

위의 세가지 단계를 거쳐 간단하게 QR코드를 생성 할수 있습니다.




댓글

주간 인기글

HTML 템플릿을 인쇄용으로 가공하기

네이버 클라우드 SENS 활용 SMS 발송을 위한 법인 발신번호 등록

[반려동물 이야기] 반려동물 동반 가능 카페와 식당

[앱 디자인] 디자인 가이드 만들기 - 아이폰

[반려동물 이야기] 비트코인 고양이