解説 iPhone/iPadのiOS用のmobile Safariにおいて動くWebアプリからカメラでQRコードを読み取るには大きく分けて2つ方法があります。 一つはiOS6よりサポートされたinputのfile要素を利用してカメラまたはカメラロールよりサーバーに画像を送ってサーバでデコードする方法。これはSafariから抜けなくていい反面、フォーカスをきっちりあわせてシャッターを押さなければいけなかったり、転送量が多くなるなどデメリットもあります。 もう一つはスキーム(zxing://...)に対応したネイティブアプリに転送して結果をhttpスキームのコールバックで受け取る方法です。この方法はコールバック時にSafariのタブが一枚余計に開いてしまいますが、ローカルだけで完結できる上、ネイティブアプリが自動的にカメラフォーカスをあわせてくれる為、操作性も高くなります。 スキームに対応した