2012年6月6日水曜日

AndroidのzXing(QRコードスキャナー)と連携してQRコードを読み込む

Intent intent = new Intent("com.google.zxing.client.android.SCAN");
intent.putExtra("SCAN_MODE", "QR_CODE_MODE");

try {
  
  // onActivityResultをoverrideして結果を取得
  startActivityForResult(intent, 10000);
  
} catch(ActivityNotFoundException e) {
  
  // zXingがインストールされていないので、インストールを促す動作
  
}


zXingから制御が戻ってきた時に以下が呼ばれる。

@Override
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
  if(requestCode == 10000) {
    
    if(resultCode == RESULT_OK) {
      
      // QRコードをデコードした結果の文字列を取得
      String qr_code = intent.getStringExtra("SCAN_RESULT");
      
    }
  
  }

}


参照元: http://code.google.com/p/zxing/wiki/ScanningViaIntent