我有一个现有的网站,我想创建一个更适合的移动版本。例如,主站点使用下拉菜单,我们都知道这些都是移动设备上的失败。
如果我检测到来自移动浏览器的请求,我想重定向到我的移动版本(它将是当前网站的子域)。所以当他们谷歌的东西来到我的网站时,他们会自动看到移动版本(就像维基百科一样)。
ASP.NET提供了一种简单的方法吗?如果没有,我该怎么办?
答案 0 :(得分:3)
您可以在Request.Browser中的某处使用IsMobileDevice属性。你需要一些不错的浏览器定义。我使用了这些优秀的浏览器定义集:Ocean's place browser definitions。
他们真的是深度和我见过的最好的。我认为他目前也在开发.NET4。
答案 1 :(得分:3)
我认为最好的解决方案是WURFL。它是更新的设备描述存储库,它是免费的。唯一的不便是.net api是GPL。
答案 2 :(得分: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...")
}
答案 3 :(得分:2)
您可以使用codeplex上的项目:Mobile Device Browser File
项目说明
移动浏览器定义文件 包含个人的定义 移动设备和浏览器。在奔跑 时间,ASP.NET使用的信息 请求标头确定什么 设备类型/浏览器已经成功了 请求。
该项目提供了一个数据文件 当与ASP.NET一起使用时会检测到 传入移动设备并呈现给您 作为一组67的Web开发人员 能力或属性描述 请求设备。这些 功能范围从屏幕尺寸到 cookie支持并提供所有 您需要自适应的信息 为手机和手机渲染内容 设备
什么是移动设备浏览器定义文件?
移动设备浏览器定义 文件包含功能定义 适用于个人移动设备和 浏览器。在运行时,ASP.NET使用 这个.browser文件,以及 HTTP请求中的信息 标题,确定什么类型 设备/浏览器已提出请求 以及它的能力 设备是。这个信息是 通过开发者接触开发者 Request.Browser属性并允许 他们要定制的介绍 他们的网页适合 目标设备的功能。
答案 4 :(得分:1)
有一个article on CodeProject提供这样的功能。