1

この質問に関連: Javascript / jQuery を介して Android フォンを検出する

Android SDK の新しいバージョンでは、ネイティブ ブラウザはコードネーム「android」を返さなくなりました。 navigator.userAgent次のようなものを返します。

mozilla/5.0 (X11; Linux x86_64) AppleWebkit7534.24 (Gecko のような KHTML) Chrome/11.0.696.34 Safari7534.24

なぜ何か提案はありますか?これは、現在の Android バージョン 4.1.1 を搭載した HTC One S を搭載したハンドセットからのものです。

4

3 に答える 3

0

ブラウザスニッフィングは絶対に使用しないでください。機能検出を使用します。ユーザークライアントの機能に応じてアクションを実行できるmodernizrと呼ばれるjavascriptライブラリがあります。

于 2013-01-04T08:28:24.830 に答える
0

ええ...これはおそらくブラウザが「デスクトップモード」になっているためです。

小さな画面に表示されたときにページのモバイルバージョンを表示したい場合は、次のようにしてください。

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<script type="text/javascript">  
  if ((screen.width < 480) || (screen.height < 480)) {    
    location.replace('/m/');
  }  
</script>

実際の画面サイズを報告するには、ブラウザのビューポートメタタグが必要です。

編集:これ
によると、画面サイズをチェックする前にブラウザが「追いつく」までしばらく待つ必要があるかもしれないので、私はそれを使用する方が良いと思います:

<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<script type="text/javascript">  
  setTimeout(function() {
               if ((screen.width < 480) || (screen.height < 480)) {    
                 location.replace('/m/');
               }  
             }, 200);
</script>
于 2013-01-04T08:31:12.033 に答える
0

この質問を参照してください。デスクトップ モードで表示していませんか? ストック ブラウザや他の多くのブラウザには、ブラウジング モードに応じて 2 つの異なるユーザー エージェントがあります。

于 2013-01-04T08:23:21.203 に答える