QR Reader

국내에서 QR Code는 매우 제한적으로 사용되고 있다. 특정 공간에서 특수한 목적으로 사용되는 경우들은 있어왔지만, 광범위하게 일상 생활 속으로 들어오지 못한 기술이다. 우연한 기회에 QR Reader를 적용한 모바일 서비스를 개발하였고, 추가적인 요구사항으로 이를 Mobile Web으로 만들자고 한다.

 

1.모바일 앱을 통한 QR 스캔

가장 범용적으로 사용하는 방법은 scan.me라는 회사에서 제공하는 QR Code Reader를 사용하는 것이다.  그 외에도 Zxing에서 제공하는 Barcode Scanner가 있다. 일반적으로 모바일 앱에 QR Code 리더를 삽입한다면 보통 Zxing에서 제공하는 라이브러리를 사용한다. QR/Barcode 카메라를 통해 정보를 해석하고, 이를 브라우징할 수 있는 간단한 앱이다.

 

2.웹을 통한 사진 업로드 방식의 QR 스캔

위의 방법에 대해서는 누구나 쉽게 알 수 있는 방법이었고, 이제는 모바일 웹을 통한 QR 스캔이 어떻게 이루어지는지 확인해보았다. 우선 가장 먼저, stackoverflow에서 ‘QR Reader HTML5’라고 검색해보았다. 나와 거의 동일한 질문을 던진 개발자들이 역시나 많았다. 눈에 띄는 답변은 아래와 같다.

Screenshot 2016-05-11 14.42.23

설명에 기반한다면 WebQR(회사는 LazarSoft)이라는 웹사이트를 통해 QR 코드를 생성하고, 이를 업로드했을 때 QR을 인지하는 방식이다. 기반이 되는 라이브러리는 ZXing을 사용한 것으로 보이고,  QR 파일을 직접 업로드했을 때와, 카메라로 찍어서 업로드했을 때 모두 인식률은 만족스러운 편이었다.

 

3.웹을 통한 비디오 방식의 QR 스캔

앞선 방식이 사진을 찍고 난 후에 업로드하고, 이를 서버에 설치된 QR Decoder를 이용하였다면 모바일 앱에서 동작하는 방식과 동일하게 카메라를 열고 있는 상황에서 QR을 스캔할 수 있는 방법을 찾아보았다. 이유는 QR을 찍는 환경이 사무실이 아니라 작업 현장이기 때문에 어두울 가능성이 높고, QR 자체가 훼손되었을 가능성이 높기 때문이다. 비디오 방식 (정확한 용어는 아니지만) 처럼 QR이 인식될 때까지 카메라를 열고 있는 방식이라면 100%에 가깝게 인식할 수 있을것으로 추정했다.

WebCodeCam 라는 Jquery Plugin을 사용해 보았다. 사이트에 들어가면 하단부에 Live Demo가 돌아가고, 우측 상단에 있는 Play 버튼을 누르면 카메라가 돈다. 맥북+크롬 조합으로 동작시켰다.

Screenshot 2016-05-11 15.25.54

역시 인식률은 좋았다. 하지만 Mobile Chrome에서는 플러그인을 지원하지 않기 때문에 사용할 수 있을지 의문이 들었고, 이는 다양한 브라우저 환경을 사용하는 모바일에는 적합하지 않다는 생각이 든다.

Screenshot 2016-05-11 15.26.13

 

모바일 QR 앱과 함께 사용하는 경우

아직 확인해보지는 않았지만, 웹 페이지에서 특정 QR 앱을 열고 (이 경우, 전용 안드로이드 앱을 만들어서 사용한다는 전제) 사진을 찍어 Decoding을 한 후에 해석된 정보를 웹 페이지로 던지는 형태도 가능할 것으로 생각한다. (물론 iOS는 홈 버튼을 눌러서 이동해야될 것 같지만)

 

결론

  • QR 리더기를 모바일에서 사용하는 방식으로는 네이티브 앱을 사용하는게 맞다.
  • 웹 기반으로 만드는 경우, 사진을 찍은 후 업로드하는 방식을 사용하는게 맞다.
  • 라이브 카메라를 통하는 경우 해당 플러그인이 모바일 브라우저와 호환되는지 확인해야 한다.

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s