Titanium Mobileでscanditモジュールを使う
Titanium MobileでQRコードの読み取りをやってみました。
環境
Titanium Studio 2.1
Android 4.0
scanditにサインインして確認メールのURLからダウンロードページに行きます。
そこからzipファイルをダウンロードできます。
Titanium Mobileでモジュールを有効にするときはプロジェクト直下のディレクトリにzipファイルを配置します。
この状態でビルドすると自動的にzipファイルが展開されてプロジェクトにモジュールがインストールされます。
あとはscanditのホームページにサンプルのコードが載っているのでプロジェクトのapp.jsにコピーします。
さらにtiapp.xmlにscanditのモジュールを追加して、scanditにサインインした時に付与されるIDをサンプルの「--- ENTER YOUR SCANDIT SDK APP KEY HERE --- SIGN UP AT WWW.SCANDIT.COM」って書いてあるところを置き換えればよいです。
しかしこのままだとAndroidの場合QRコードのスキャンができません。AndroidではQRコードの読み取りはデフォルトでOFFになっているので、有効にしないといけないのです。
picker.setQrEnabled(true);
これでQRコードのスキャンができるようになりました。scanditはQRコードらしき物体を画面内から検出してくれてファインダーが移動してくれるので、多少角度がついていても読み取ってくれます。
左上の懐中電灯をタップするとライトをつけることもできます。
しかしながら、stopScanning()を使おうとするとエラーがでてしまいます。
謎です。stopScanning()の実行に成功された方教えてください。APIの例のまま使ってるだけなんですけどね。。
一部動かせなかった部分もあるんですが、スキャン自体の動作は担保できました。バーコードスキャンのライブラリはそもそも絶対数が少ないので、ある程度使えてTitanium用にビルドされたものがあるだけでもラッキーでした。