Apple 的 iPad Mini 是 iPad 2 的一个较小的克隆版本,其方式比我们想要的要多。在 JavaScript 中,该window.navigator
对象为 Mini 和 iPad 2 公开相同的值。到目前为止,我检测差异的测试并未成功。
为什么这很重要?
由于 iPad Mini 和 iPad 2 屏幕的像素相同,但实际尺寸(英寸/厘米)不同,因此它们的PPI(每英寸像素数)有所不同。
对于提供友好用户界面的 Web 应用程序和游戏,某些元素的大小会根据用户的拇指或手指位置进行调整,因此,我们可能希望缩放某些图像或按钮以提供更好的用户体验。
到目前为止我尝试过的事情(包括一些非常明显的方法):
window.devicepixelratio
- 以厘米为单位的 CSS 元素宽度
- CSS 媒体查询(例如
resolution
和-webkit-device-pixel-ratio
) - 类似单位的 SVG 绘图
- 在设定的时间内进行各种 CSS webkit 转换并计算渲染帧数
requestAnimFrame
(我希望能检测到可测量的差异)
我的想法很新鲜。你呢?
更新 感谢到目前为止的回复。我想评论一下人们投票反对检测 iPad mini 与 2,因为 Apple 有 uhm,一个统治他们的指导方针。好的,这就是为什么我觉得知道一个人使用的是 iPad mini 还是 iPad 2 真的很有意义的原因。按照我的推理去做你喜欢的事。
iPad mini 不仅是一个小得多的设备(9.7 英寸对 7.9 英寸),而且它的外形尺寸允许不同的用途。除非您是Chuck Norris ,否则在玩游戏时通常用两只手握住 iPad 2 。迷你更小,但它也更轻,允许你用一只手握住它并用另一只手滑动或点击或诸如此类的游戏。作为一名游戏设计师和开发人员,我只想知道它是否是迷你版,因此如果我愿意,我可以选择为玩家提供不同的控制方案(例如在与一组玩家进行 A/B 测试之后)。
为什么?好吧,事实证明,大多数用户倾向于使用默认设置,因此当玩家加载第一次玩游戏是我,可能还有其他游戏设计师,希望能够做到的事情。
因此,恕我直言,这超出了粗略的手指/指南讨论,这只是 Apple 和所有其他供应商应该做的事情:允许我们唯一地识别您的设备并以不同的方式思考,而不是遵循指南。