【问题标题】:Detect UserAgent is not from Mobile检测 UserAgent 不是来自 Mobile
【发布时间】: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


【解决方案1】:

This is nice Blog i think this will help you.

推荐使用request.Browser.IsMobileDevice

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-24
    • 2014-07-20
    • 1970-01-01
    • 2017-08-30
    • 2011-09-24
    相关资源
    最近更新 更多