Android的Request.Browser.IsMobileDevice = false,为什么?

我有三星Galaxy S2,在C#代码中显示Request.Browser.IsMobileDevice = false,但是我想为我的应用程序使用移动版本。 如何有能力显示我的网站的移动版本,为Android设备?

非常感谢。

谢尔盖。

Solutions Collecting From Web of "Android的Request.Browser.IsMobileDevice = false,为什么?"

您可以检查User-Agent HTTP标头。

用户代理是一个标识符,通常包含浏览器名称和版本,以及运行浏览器的平台或操作系统的名称和版本。 目前的标准是把这个分割成空间分隔的元素,但实际上User-Agent字段可以设置为任何东西。

例:

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

这表明我正在64位版本的Windows NT 6.1 Release(即Windows 7)上运行Firefox 8.0(它使用Mozilla渲染器v5.0和Gecko布局引擎版本2010/01/01)。

您可以从这里获得有关用户代理string的更多信息: http : //www.useragentstring.com/

使用NuGet的 51Degrees.mobi进行一键安装,零configuration可以解决这个问题。

你可以在App_Browsers中用一个正则expression式来创build一个文件来识别浏览器,下面的一个就是在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> 

检查设备是否是Android设备是有用的。

有一个post的代码是: http : //dbarrowstechblog.blogspot.hk/2011/02/requestbrowserismobiledevice.html