如何检测移动设备并获取用户代理信息只发送一次并将该信息保存到服务器上的数据库?
是否有任何脚本检查用户代理然后发送并将该信息保存到服务器上的数据库?
我正在制作移动网站,有m.facebook.com和touch.facebook.com两个版本,我想重定向到不同的手机。 我使用WURFL设备检测。
因此,例如m.html5version.com应该提供给所有支持HTML5的设备,而m.mobileversion.com应该提供给所有其他手机。
所以我需要一种方法来使用任何服务器端或客户端方法第一次检测设备和浏览器。 当任何用户第一次在设备上打开网站时,一旦应该收集有关设备和浏览器的信息,脚本应该运行,并且应该将信息保存在我现有的WURFL数据库中,所以下次当任何用户来自同一设备时,那么他将根据设备重定向到触摸或移动版网站。
因此,只有第一次在第一台设备上我想检测设备并保存信息。
有没有办法做到这一点?
例如
Android 1.6没有HTML5支持,仍在使用中。 所以我想将所有Android 1.6设备重定向到m.mobileversion.com而不是touch.mobileversion.com
在触摸版的网站上,我使用的是HTML 5标签,如
,
等,不支持Android 1.6。 所以我想检测第一个从Android 1.6设备访问网站的设备,因为1.6中不支持HTML5所以用户代理应该保存在我的数据库中然后当下次任何用户打开网站时我会重定向自动下载移动版本,任何设备都不需要第二次检测。
您可能希望了解jQuery对此的看法,因为它很有趣。
除了检测浏览器外,它们还检测浏览器function:
http://api.jquery.com/jQuery.browser/
http://api.jquery.com/jQuery.support/
此外,请注意,某些移动用户不希望被重定向到针对移动设备优化的设备。 例如,当一个网站将我的iPad检测为移动设备并将我(没有任何可能覆盖它)发送到一个我甚至不想用iPhone浏览的邋mobile移动网站时,我非常讨厌它。
一般来说,iOS和Android设备如果编码正确,将很乐意使用标准网站。 而其他手机正在快速消亡。
至于只检测和保存一次数据,您可以设置一个cookie来记录您已经完成检测的事实。 然后在下次加载页面时,检查cookie是否存在 – 如果不存在,则调用检测function并记录到数据库。 如果你确实找到了cookie,那么你知道你已经收集了数据,你可以再次跳过它。