【发布时间】:2013-08-10 00:01:57
【问题描述】:
条件 嗨,目前我有一个功能来检测客户端请求是否来自移动设备。 函数如下。
public bool IsHandheld()
{
bool status = false;
string strUserAgent = Request.UserAgent.ToString().ToLower();
if (strUserAgent != null)
{
if (Request.Browser.IsMobileDevice == true || strUserAgent.Contains("iphone") ||
strUserAgent.Contains("blackberry") || strUserAgent.Contains("mobile") ||
strUserAgent.Contains("windows ce") || strUserAgent.Contains("opera mini") ||
strUserAgent.Contains("palm"))
{
status = true;
}
}
return status;
}
问题: 这不足以检测手持设备,因此 我通过 Internet 获得了一个字符串列表来比较它是否包含在 Userstring 中
new string[] { "blackberry" ,"iphone","mobile","windows ce","opera mini",
"palm","symbianos", "ipad", "symbianos", "ipod", "blackberry",
"sonyericsson", "android", "samsung", "nokia", "wap", "motor"
});
如果设备继续增加,那么这个列表会很长
我想反转条件。我想检测请求是来自 PC 还是笔记本电脑,而不是来自手持设备。 有什么办法吗? 还是我想错了?
【问题讨论】:
-
@Thilo 我想检测 PC/笔记本电脑而不是浏览器的设备类型
-
我认为这正是另一个问题的意义所在:决定访问您的浏览器是移动浏览器还是桌面浏览器。
-
@Thilo 谢谢我被误解了。感谢您的链接它对我帮助很大:)
标签: c# user-agent handhelddevice