2011-12-01 10 views
16

私はsamsung galaxy s2を持っていますが、C#コードにはRequest.Browser.IsMobileDevice = falseが表示されていますが、自分のアプリケーションにモバイル版を使用したいと思います。 Android搭載端末向けに、自分のウェブサイトのモバイル版を表示するにはどうすればいいですか?AndroidのRequest.Browser.IsMobileDevice = false、なぜですか?

ありがとう、そんなに。

セルゲイ。

+4

お読みくださいhttp://stackoverflow.com/questions/1829089/how-does-ismobiledevice-work。 – dknaack

+0

Nugetを使って51度追加する – Shahdat

答えて

3

HTTPヘッダーUser-Agentを確認できます。

user-agentは、(通常)ブラウザの名前とバージョン、ブラウザが実行されているプラ​​ットフォームまたはOSの名前とバージョンを含む識別子です。現在の標準では、この分割をスペース区切りの要素に分割することですが、実際にはUser-Agentフィールドには何も設定できません。

例:

Mozilla/5.0 Windows NT 6.1 WOW64 rv 8.0 Gecko/20100101 Firefox/8.0 

これは、私は、Windows NTの64ビット版上(MozillaのレンダラV5.0とのGeckoレイアウトエンジンのリリース2010年1月1日を使用しています)のFirefox 8.0を実行していることを示してい6.1リリース(Windows 7)

ここからユーザーエージェント文字列に関する詳細情報を取得することができます:http://www.useragentstring.com/

+0

ありがとう!あなたは私の日を救った:) – Sergey

+0

助けになるのはうれしい。また、dknaackのリンクをよく読んで、あなたの質問にコメントとして投稿してください。 – Polynomial

+0

は非常に面白そうです...もう一度ありがとうございます – Sergey

2

使用51Degrees.mobi NuGetから1のために、この問題が修正されますゼロ設定で[インストール]をクリックします。

+8

もうオプションはありません。まあ、それはオプションですが、プレミアムデータサブスクリプションなしでアップデートを入手することはできません。クラウドソーシングは最高です! –

0

デバイスがAndroidであるかどうかを確認すると便利です。コード付きポストがあり

:あなたは、ブラウザを識別するために、正規表現でApp_Browsersにファイルを作成することができます http://dbarrowstechblog.blogspot.hk/2011/02/requestbrowserismobiledevice.html

+1

これは理想的ではありません。アンドロイドタブレットをモバイルとして検出します(一般に、タブレットにモバイル版が表示されないようにするためです)。ユーザーエージェントの文字列は、タブレットの場合は非常に頻繁に「タブレット」を含んでいるようです。 –

1

は、以下の1は、AndroidでのFirefoxにある:

<browsers> 
    <!--Mozilla/5.0 (Android 5.0; Mobile; rv:44.0) Gecko/44.0 Firefox/44.0--> 
    <browser id="FirefoxMobile" parentID="firefox3plus"> 
     <identification> 
      <userAgent match="Mozilla.+\(Android.+Mobile.*\)" /> 
     </identification> 
     <capabilities> 
      <capability name="isMobileDevice" value="true" /> 
     </capabilities> 
    </browser> 
</browsers> 
関連する問題