L'iPad Mini di Apple è un clone più piccolo dell'iPad 2 in più modi di quanto vorremmo. In JavaScript, l' window.navigator
oggetto espone gli stessi valori per Mini e iPad 2. I miei test finora per rilevare la differenza non hanno portato al successo.
Perché questo è importante?
Poiché gli schermi iPad Mini e iPad 2 sono identici in pixel ma variano in dimensioni reali (pollici / centimetri), variano in PPI (pixel per pollice).
Affinché le applicazioni Web e i giochi offrano un'interfaccia utente intuitiva, alcuni elementi sono regolati in termini di dimensioni in relazione alla posizione del pollice o delle dita di un utente, quindi, potremmo voler ridimensionare determinate immagini o pulsanti per offrire una migliore esperienza utente.
Cose che ho provato finora (compresi alcuni approcci piuttosto ovvi):
window.devicepixelratio
- Larghezza dell'elemento CSS in unità di cm
- Query multimediali CSS (come
resolution
e-webkit-device-pixel-ratio
) - Disegni SVG in unità simili
- Fare tutti i tipi di trasformazioni CSS del webkit per un tempo prestabilito e contare i frame renderizzati
requestAnimFrame
(speravo di rilevare una differenza misurabile)
Sono fresco di idee. E tu?
Aggiornamento Grazie per le risposte finora. Vorrei commentare le persone che votano contro il rilevamento di iPad mini contro 2 poiché Apple ha uhm, una linea guida per dominarli tutti. Ok, ecco il mio ragionamento sul perché ritengo che abbia davvero senso nel mondo sapere se una persona sta usando un iPad mini o un 2. E con il mio ragionamento cosa ti piace.
L'iPad mini non è solo un dispositivo molto più piccolo (9,7 pollici contro 7,9 pollici), ma il suo fattore di forma consente un uso diverso. L'iPad 2 di solito viene tenuto con due mani durante il gioco a meno che tu non sia Chuck Norris . Il mini è più piccolo, ma è anche molto più leggero e consente il gameplay in cui lo si tiene in una mano e ne si utilizza un altro per scorrere o toccare o quant'altro. Come progettista e sviluppatore di giochi, vorrei solo sapere se è un mini, quindi posso scegliere di fornire al giocatore un diverso schema di controllo, se lo desidero (ad esempio dopo un test A / B con un gruppo di giocatori).
Perché? Bene, è un dato di fatto che la maggior parte degli utenti tende ad andare con le impostazioni predefinite, quindi tralasciando una levetta virtuale e mettendo sullo schermo qualche altro controllo basato sul tocco (solo facendo un esempio arbitrario qui) quando il giocatore carica il il gioco per la prima volta è ciò che io, e probabilmente altri progettisti di giochi, mi piacerebbe poter fare.
Quindi IMHO va oltre le discussioni spesse / linee guida ed è solo qualcosa che Apple e tutti gli altri fornitori dovrebbero fare: permetterci di identificare in modo univoco il tuo dispositivo e pensare diversamente invece di seguire le linee guida.