2012-01-05 14 views
1

QRコードリーダーアプリ内でウェブサイトを開いた場合、javascriptまたはjsライブラリを使用して検出する方法はありますか?QRコードリーダーアプリ内でWebページが開かれているかどうかを検出

私はorientation検出を使用しているため、私は質問している理由は、WebページがQRコードアプリケーションのいくつかを介して表示されているときには動作しません。 (アプリでポートレートモードに強制されているもの)

「Safariでリンクを開くまで、このサイトは正しく動作しません」というメッセージが表示されますそうですね。 (私が推測するので、私はJSを通じてSafariで開くようにそれを強制するために方法はありません?)

答えて

6

あなたはJSでのナビゲーターオブジェクトからユーザーエージェント文字列を取得しようとすることができます:たぶん

navigator.userAgent 

QRを-Appはそれ自体を識別しますが、電話機のすべてがデフォルトのWebブラウザで開かれるため、機能する可能性は低いです。

おそらく、ページ全体の幅と高さを計算することで、向きのフォールバックを作成できます。そうすれば、デバイスからの報告された方向と実際のデバイスの向きとの違いを検出することができます。その違いをスイッチとして使用してメッセージを表示することができます。

+0

私は実際にそれについて考えましたが、遠くに引っ越したようでした。しかし、それは動作します!ブラウザは、ブラウザがアプリケーションの中にラップされているときに、iPhoneとして自分自身を識別しますが、Safariブラウザを使用するときは 'Safari/xxxx.xx'を追加します。したがって、単純な '' indexOf( "iPhone && Safari")は、私がiPhone上のネイティブSafariアプリケーションにいると伝えます。アンドロイドとWP7はネイティブアプリのQRコードからURLを開き始めますので、本当に問題はありませんでした。 – peirix

関連する問題