IPad Apple Mini to mniejszy klon iPada 2 na więcej sposobów, niż byśmy chcieli. W JavaScript window.navigator
obiekt wyświetla te same wartości dla Mini i iPada 2. Moje dotychczasowe testy w celu wykrycia różnicy nie doprowadziły do sukcesu.
Dlaczego to jest ważne?
Ponieważ ekrany iPada Mini i iPada 2 są identyczne w pikselach, ale różnią się faktycznym rozmiarem (cale / centymetry), różnią się PPI (piksele na cal).
Aby aplikacje internetowe i gry oferowały przyjazny interfejs użytkownika, niektóre elementy są dostosowywane do wielkości kciuka lub palca użytkownika, dlatego możemy przeskalować niektóre obrazy lub przyciski, aby zapewnić lepszą obsługę.
Rzeczy, których do tej pory próbowałem (w tym niektóre dość oczywiste podejścia):
window.devicepixelratio
- Szerokość elementu CSS w cm
- Zapytania o media CSS (takie jak
resolution
i-webkit-device-pixel-ratio
) - Rysunki SVG w podobnych jednostkach
- Robienie wszelkiego rodzaju transformacji zestawu CSS przez określony czas i liczenie renderowanych ramek za pomocą
requestAnimFrame
(miałem nadzieję wykryć mierzalną różnicę)
Brakuje mi pomysłów. Jak o tobie?
Aktualizacja Dziękujemy za dotychczasowe odpowiedzi. Chciałbym skomentować osoby głosujące przeciwko wykryciu iPada mini kontra 2, ponieważ Apple ma Uhm, jedną z wytycznych, aby rządzić nimi wszystkimi. OK, oto moje rozumowanie, dlaczego uważam, że naprawdę sensowne jest, aby wiedzieć, czy dana osoba używa iPada mini lub 2. I rób z moim rozumowaniem to, co lubisz.
IPad mini to nie tylko znacznie mniejsze urządzenie (9,7 cala w porównaniu z 7,9 cala), ale jego forma pozwala na inne użycie. IPad 2 jest zwykle trzymany dwiema rękami podczas grania, chyba że jesteś Chuckiem Norrisem . Mini jest mniejsze, ale jest również znacznie lżejsze i pozwala na rozgrywkę, w której trzymasz go w jednej ręce i używasz drugiej, aby przesunąć, dotknąć lub coś w tym stylu. Jako projektant i programista sam chciałbym się dowiedzieć czy jest to mini, więc mogę wybrać dla gracza inny schemat sterowania, jeśli chcę (na przykład po testach A / B z grupą graczy).
Dlaczego? Cóż, to udowodniony fakt, że większość użytkowników ma tendencję do wybierania ustawień domyślnych, więc pomija się wirtualną pinezkę i wprowadza inną kontrolę opartą na dotknięciu na ekranie (podając tutaj dowolny przykład), gdy gracz ładuje Gra po raz pierwszy jest tym, co ja i prawdopodobnie inni projektanci gier chcielibyśmy mieć zrobić.
IMHO wykracza zatem poza dyskusje na temat grubych palców / wytycznych i jest po prostu czymś, co powinni zrobić Apple i wszyscy inni dostawcy: pozwól nam jednoznacznie zidentyfikować twoje urządzenie i myśleć inaczej, zamiast postępować zgodnie z wytycznymi.