gpt4 book ai didi

c# - 安卓手机浏览器检测

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:01:25 25 4
gpt4 key购买 nike

我有一个网络应用程序,手机用户可以在其中看到针对移动设备优化的网站。新的 Samsung Galaxy SIII 用户代理没有提供请求来自手机的线索。检测手机的最佳做法是什么?

我知道 javascript 功能检测(即 modernizer),但我希望有更好的东西。以下是三星 Galaxy SIII 用户代理:

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.34 Safari/534.24

编辑:SIII 有两个可能的用户代理。以上是“桌面”版本。好玩的东西。有关详细信息,请参阅下面的链接。

http://www.anandtech.com/Show/Index/5310?cPage=19&all=False&sort=0&page=5&slug=samsung-galaxy-nexus-ice-cream-sandwich-review

最佳答案

看看那个用户代理,我不得不说,它很难与非手持设备区分开来。

浏览器检测的问题在于很容易调整用户代理字符串,因此您永远不知道服务器告诉您的内容是否真实。

在这种情况下你有两个选择:

  • 您可以检查手机发送的每一个 header ,也许看看是否有一个 header 可以使其独一无二

  • 或者通过测试页面加载时间等找到某种变通方法...,作为一个异想天开的例子,手持设备上的浏览器呈现页面的速度通常比桌面浏览器慢一点,所以在测试每一个可能的移动设备之后设备 something like :

-

if( /Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent) ) {
// some code..
}

您可以查看是否只有一个简单脚本的页面没有在理想时间加载。

你明白了。

另外,尝试去这里看看它是否能检测到你:http://detectmobilebrowsers.com/

关于c# - 安卓手机浏览器检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11597940/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com