È possibile rilevare il * tipo di dispositivo mobile * tramite le intestazioni javascript o HTTP?

StackOverflow https://stackoverflow.com/questions/158369

Domanda

Ho ricevuto una richiesta da un cliente per rilevare automaticamente il tipo di dispositivo mobile (non il browser, il tipo. es: Moto Q, Blackjack II, ecc.) e selezionare automaticamente il dispositivo da un menu a discesa con un elenco dei dispositivi supportati.

Finora ho scoperto che le intestazioni HTTP (inviate da IE mobile) contengono informazioni come

  • Risoluzione
  • UA-CPU (ho visto ARM da WM 2003 e x86 da WM5)
  • User Agent (che sostanzialmente dice solo Windows CE)

L'unica cosa a cui riesco a pensare in questo momento è probabilmente usare una combinazione di risoluzione / cpu e fare una "migliore ipotesi"

Qualche idea?

È stato utile?

Soluzione

Che cosa intende esattamente il cliente per "supportato". Sicuramente significa che il telefono in questione supporta l'applicazione Web e la sua funzionalità interna: non sarebbe meglio quindi dimenticare il rilevamento del dispositivo e concentrarsi semplicemente sul rilevamento di quelle funzionalità necessarie per il corretto funzionamento dell'app? Ad esempio, se il mio sito Web mobile richiede che Ajax funzioni, invece di elencare tutti i dispositivi che si dice supportino "Ajax" Potrei fare un semplice rilevamento degli oggetti per scoprirlo da solo.

Rilevamento del dispositivo, proprio come il rilevamento del browser non è affidabile. Sì, è possibile ma non lo consiglierei ... su un progetto che ho realizzato abbiamo usato la stringa User Agent per rilevare vari dispositivi. Il metodo indexOf di javaScript è stato utile! :)

Altri suggerimenti

Potresti dare un'occhiata a WURFL, qui: http://wurfl.sourceforge.net/.

Dal sito:

  

Quindi ... Cos'è WURFL?   WURFL è un file di configurazione XML che contiene informazioni su capacità e caratteristiche di molti dispositivi mobili.

     

Lo scopo principale del file è quello di raccogliere quante più informazioni possibili su tutti i dispositivi mobili esistenti che accedono alle pagine WAP in modo che gli sviluppatori saranno in grado di creare applicazioni e servizi migliori per gli utenti.

Un'altra soluzione semplice e veloce è Apache Mobile Filter: http://www.apachemobilefilter.org

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top