読者です 読者をやめる 読者になる 読者になる

2hours

1日2時間でなにができるかな

zxingでのQRコードの表示

Android

AndroidQRコードを表示するには

zxingというライブラリを使うことで簡単にQRコード生成が出来ます。

zxingの導入

まずzxingをビルドして取り込む必要があります。
ビルドに関しては以下のサイトに詳しい解説があります。
http://xiangcai.at.webry.info/200907/article_38.html

次に、出来上がったcore.jarを取り込みます。
Eclipseで取り込み先のプロジェクトを右クリック→ビルド・パス→外部アーカイブの追加をクリック。
JARの選択ウィンドウが開くので、先ほどビルドしたcore.jarを選択して開くをクリック。
これで取り込みは完了です。



jar.png

こんな感じになればOKです。


コーディング

実装方法については以下のサイトに詳しい解説があります。
http://d.hatena.ne.jp/tomorrowkey/20091114/1258206013
AndroidQRコードスキャナーで読みこんだ場合に、タイプがADDRESSBOOKであれば連絡先として追加出来るようです。


ADDRESSCODEとしてQRコードを作成にするにはどうすればいいのか

ByteMatrix qrCodeData = writer.encode(contents, BarcodeFormat.QR_CODE, size, size, encodeHint);

ここで引数として渡す文字列contentsの形式を以下のようにすれば、ADDRESSCODEとして認識するっぽい。

MECARD:N:goodspeed;TEL:090000000000;URL:http://goodspeed.selfip.net;EMAIL:y.goodspeed@gmail.com;ADR:東京都港区;;

上記のようにして生成したQRコードを読み込んだのが下の画像。


addressbook.png


これで連絡先に追加のボタンが表示されて、一発で登録される。
以下のページの Contact information に記載が。
http://code.google.com/p/zxing/wiki/BarcodeContents


設定項目

N:名前
ADR:住所
TEL:電話番号
URL:URL
EMAIL:メールアドレス
BDAY:誕生日
ORG:所属
NOTE:メモ

のようだが、所属とメモは連絡先にセットされず。
(誕生日とURLは連絡先の項目にもない。)