我有一个只能从iPhone 4s开始运行的应用程序,我需要能够在客户端(即javascript)区分设备,并相应地加载应用程序或重定向。 有没有办法检测它? 感谢
答案 0 :(得分:1)
我为你看到了这三个选项:
1)使用预煮的开源脚本来检查这一点,并根据结果进行重定向。您可以使用此示例:http://detectmobilebrowsers.com/
2)您实施javascript ,根据导航器参数进行检查。请参阅this以及SO答案中的引用代码。
function iOSversion() { if (/iP(hone|od|ad)/.test(navigator.platform)) { var v = (navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/); return [parseInt(v[1], 10), parseInt(v[2], 10), parseInt(v[3] || 0, 10)]; } }
3.)您可以使用 Apache端的重写规则将重定向到基于用户代理的正确页面。请参阅this。
对于所有3个选项,您遇到的问题是几乎无法区分iPhone 4和4s。请参阅此SO answer。
如果你必须检查视网膜功能,你也可以使用这个JS:
var isRetina = window.matchMedia("(-webkit-min-device-pixel-ratio: 2)").matches;