0

我有一个只能从 iPhone 4s 及更高版本运行的应用程序,我需要能够在客户端(即 javascript)上区分设备,并相应地加载应用程序或重定向。有什么方法可以检测到吗?谢谢

4

1 回答 1

1

我为您看到了这三个选项:

1)使用预先准备好的开源脚本来检查这一点,并根据结果进行重定向。例如,您可以使用它:http: //detectmobilebrowsers.com/

2)您实现了一个基于导航器参数进行检查的javascript 。请参阅以及该 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 端使用重写规则根据用户代理重定向到正确的页面。看到这个

对于所有 3 个选项,您都会遇到一个问题,即很难区分 iPhone 4 和 4s。看到这个答案

仅在必须检查视网膜功能时才提及,您也可以使用此 JS:

var isRetina = window.matchMedia("(-webkit-min-device-pixel-ratio: 2)").matches;

更多信息什么是最小设备像素比:链接。此处还有有关媒体查询的信息:链接

于 2013-06-05T16:59:42.980 回答