Tworzę aplikację internetową, która korzysta z PhoneGap: Build dla wersji mobilnej i chcę mieć jedną bazę kodów dla wersji „desktopowej” i mobilnej. Chcę móc wykryć, czy połączenia PhoneGap będą działać (tj. Czy użytkownik urządzenia mobilnego będzie obsługiwał PhoneGap).
Szukałem i nie mogę uwierzyć, że nie ma na to prostego sposobu. Wiele osób przedstawiło sugestie;
- http://www.sencha.com/forum/showthread.php?144127-Checking-if-running-in-PhoneGap-or-Mobile-Web-Browser
- http://groups.google.com/group/phonegap/browse_thread/thread/322e80bd41bb1a54/a421300eb2a2029f?lnk=gst&q=detect+desktop#a421300eb2a2029f
- http://groups.google.com/group/phonegap/browse_thread/thread/8a95dfeb0f313792/3ff10d8f35211739?lnk=gst&q=detect+desktop+browser#3ff10d8f35211739
Żadne z nich nie zadziała, chyba że usuniesz plik PhoneGap Javascript z wersji aplikacji na komputery, co jest sprzeczne z moim celem, jakim jest posiadanie jednej bazy kodu.
Jak dotąd jedynym rozwiązaniem, które wymyśliłem, jest węszenie przeglądarki / agenta użytkownika, ale nie jest to co najmniej solidne. Wszelkie lepsze rozwiązania mile widziane!
EDYCJA: Nieznacznie lepszym rozwiązaniem jest próba wywołania funkcji PhoneGap po krótkim czasie - jeśli to nie zadziała, załóżmy, że użytkownik korzysta z przeglądarki internetowej na komputerze.