6

我有一个现有的网站,我想创建一个更合适的移动版本。例如,主站点使用下拉菜单,我们都知道这些在移动设备上是相当失败的。

如果我检测到来自移动浏览器的请求,我想重定向到我的移动版本(它将是当前站点的子域)。因此,当他们用 Google 搜索某些内容并访问我的网站时,他们会自动看到移动版本(就像 Wikipedia 一样)。

ASP.NET 是否提供了一种简单的方法来做到这一点?如果没有,我该怎么做?

4

5 回答 5

3

把事情简单化...

继承人的 JS 相同...

希望它可以帮助某人..

var useragent = navigator.userAgent;

var isMobile = !!useragent.match(/iPhone|Android|Blackberry|Sony|Nokia|Motorola|Samsung/i),
    isWebBrowser = !!useragent.match(/Mozilla/i);

// Redirect the call accordingly.

  if(isWebBrowser && !isMobile)
            //call to web portal
            alert(" You seem to me... calling from Web Browser")
    else if(isMobile)
        //call to mobile apps
            alert(" Call seems to be from Mobile device...")
    else
    {
        // jus kiddin...
        alert(" Unable to detect the device..... Please report to admin...")
    }
于 2011-06-01T11:51:05.920 回答
3

我认为最好的解决方案是WURFL。它是更新的设备描述存储库,并且是免费的。唯一的不便是 .net api 是 GPL。

于 2010-04-18T19:01:28.153 回答
3

您可以在 Request.Browser 的某处使用 IsMobileDevice 属性。不过,您需要一些不错的浏览器定义。我使用这些优秀的浏览器定义集:Ocean's place browser definitions

它们真的很深入,是我见过的最好的。我认为他目前也在研究 .NET4 的。

于 2010-04-17T07:08:10.753 回答
2

您可以使用 codeplex 上的一个项目:Mobile Device Browser File

项目描述

移动浏览器定义文件包含各个移动设备和浏览器的定义。在运行时,ASP.NET 使用请求标头中的信息来确定发出请求的设备/浏览器的类型。

该项目提供了一个数据文件,当与 ASP.NET 一起使用时,它将检测传入的移动设备,并向 Web 开发人员展示一组描述请求设备的 67 个功能或属性。这些功能的范围从屏幕大小到 cookie 支持,并提供您为移动电话和设备自适应呈现内容所需的所有信息。

什么是移动设备浏览器定义文件?

移动设备浏览器定义文件包含单个移动设备和浏览器的功能定义。在运行时,ASP.NET 使用此 .browser 文件以及 HTTP 请求标头中的信息来确定发出请求的设备/浏览器的类型以及该设备的功能。此信息通过 Request.Browser 属性向开发人员公开,并允许他们定制其网页的呈现方式以适应目标设备的功能。

于 2010-04-16T14:54:05.640 回答
1

CodeProject上有一篇文章提供了这样的功能。

于 2010-04-16T14:44:23.377 回答