2008-08-16 12 views
6

私はasp.netプロジェクトにモバイルWebフォームを含めました。私はモバイルユーザーのためだけに見ることができると思っていましたが、どのブラウザでも、私はHttpBrowserCapabilities.IsMobileDevice = trueを使用してアクセスを比較し、適切なaspxページに転送することができないため、問題は発生しませんが、モバイルデバイスからWebフォームにアクセスすると、IsMobileDevice = falseと私を別のページに送ります。モバイルデバイスが非モバイルデバイスとして検出されました

どうすれば可能ですか?ユーザーエージェントがでめちゃめちゃされたか、新しいブラウザが使用されているため、

モバイルデバイスは、ポケットPC 2003

答えて

2

一部が認識されていませんが実行されます。 Opera Mobile 9.5など。これを修正するには、特にこれを定義するためのBrowser(*。browser)ファイルを作成する必要があります。私は、新しいMozillaベースのUserAgentがGoogleから送られてくるためにそれをやらなければならなかった。

4

IMHO:HttpContext.Current.Request.Headers("User-Agent")の値は、実際に要求を行っているブラウザを表しており、デバイスのタイプではありません。per-seです。

私は、スマートフォンがサードパーティのブラウザからサービスにリクエストした場合、「どのタイプのデバイスをテストしていますか」ということをよく知っています(HttpCapabilitiesBase.IsMobileDeviceと/またはHttpContext.Current.Request.Browser.IsMobileDevice)が失敗します。

残念ながら、許可されたユーザエージェント(またはその問題に関して許可されていないユーザエージェント)のリストが不足しているにもかかわらず、レンダリングする前にMozilla、iPhone、またはOperaで起動しないようにしてくださいページ...

遊ぶのは難しいアリーナです。
幸運です。

1

他のDDRをMicrosoft Browser Capabilitiesよりもよく使うべきだと思います。私はhttp://wurfl.sourceforge.net> WURFLを使用しています。オープンソースであり、さらに拡張され更新されています。 DeviceAtlasのような他の市販のDDRがあります。

多くのネットライブラリがありますが、私はMarg.Wurflを使用しています。 wurfl機能を使用してWebモバイルページをレンダリングすることができます。

関連する問題