条件嗨,目前我有一个功能来检测客户端请求是否来自移动设备。功能如下。
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;
}
问题:这还不足以检测手持设备,因此我在互联网上得到了一个字符串列表,以比较它是否包含在Userstring 中
new string[] { "blackberry" ,"iphone","mobile","windows ce","opera mini",
"palm","symbianos", "ipad", "symbianos", "ipod", "blackberry",
"sonyericsson", "android", "samsung", "nokia", "wap", "motor"
});
如果设备继续增加,那么这个列表将是长
我想扭转这种状况。我想检测请求是来自PC还是笔记本电脑,而不是来自手持设备。有什么办法吗?还是我的思维方式不对?
这是一个不错的博客,我认为这会对你有所帮助。
建议使用request.Browser.IsMobileDevice