2012-12-25 3 views
7

Celem misji jest uzyskanie statystyk dotyczących niektórych urządzeń po stronie serwera WWW. Do tego chciałbym wiedzieć ciąg agenta użytkownika dla przeglądarek domyślnie w konkretnych urządzeń z systemem Android, takich jak:Jak poznać ciąg znaków użytkownika dla konkretnych urządzeń z systemem Android?


  • HTC:
    • HTC Jetstream
    • HTC Flyer
    • HTC EVO Zobacz 4G

  • Nexus:
    • Nexus 7
    • Nexus 10

  • SAMSUNG:
    • Galaxy Tab
    • Galaxy Tab 2
    • Galaxy Note

  • MOTOROLA:
    • Motorola Xyboard 8"
    • Droid Xyboard
    • Motorola Xyboard 10"

Czy istnieje prosty sposób, aby się o tym dowiedzieć? Czy istnieje dobrze znana lista, która odwzorowuje nazwę urządzenia na ciąg znaków agenta użytkownika? Ponadto, jeśli powinienem przyjąć inne podejście - proszę o poradę.

+0

Useragent nie jest unikalny dla urządzeń –

+0

Proszę wyjaśnić. Tak czy inaczej, misją jest uzyskanie statystyk dotyczących niektórych urządzeń powyżej (i niektórych innych) ze strony serwera WWW. Wszelkie porady na ten temat będą pomocne. – BreakPhreak

+3

Różne urządzenia mogą mieć ten sam useragent. Mogą nawet zgłaszać fałszywych użytkowników. Jest całkowicie do aplikacji, która złożyła wniosek. Jakie statystyki szukasz? –

Odpowiedz

3

Polecam zmodyfikować istniejące rozwiązanie, takie jak , które jest napisane w Perlu. Używa pliku XML 51Degrees z czymś około 70 000 agentów użytkownika. Po prostu musiałbyś znaleźć interesujące i zmodyfikować skrypt AMF w taki sposób, aby zbierał interesujące dane. Co więcej 51Degrees i AMF może być stosowany również rozpoznać, czy urządzenie użytkownika jest mobilna, to wymiary ekranu itp

3

można znaleźć listę agentów użytkownika here

i sprawdzić je na serwerze

+0

Świetnie! Skąd mam wiedzieć na przykład ciąg agenta użytkownika dla "Galaxy Tab 2"? – BreakPhreak

+0

zależy to od języka po stronie serwera. Można więc wyszukać, jak pobrać agenta użytkownika i przeanalizować go dla tego określonego języka. –

+0

Który ciąg powinienem wyszukać 'Galaxy Tab 2' (na przykład)? – BreakPhreak

4

Chociaż nie jest to bezpośrednia odpowiedź, chciałbym podnieść się problem:

proszę zauważ, że program użytkownika po stronie klienta można łatwo modyfikować. Na przykład w aspekcie programowania:

HttpParams params = new BasicHttpParams(); 
HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1); 
HttpProtocolParams.setContentCharset(params, HTTP.UTF_8); 
HttpProtocolParams.setUserAgent(params, "WAHAHAHA"); 
HttpConnectionParams.setConnectionTimeout(params, HTTP_CONNECTION_TIMEOUT); 
HttpConnectionParams.setSoTimeout(params, HTTP_READ_TIMEOUT); 
HttpClient newHttpClient = new DefaultHttpClient(params); 

Używając tego HttpClient aby uzyskać dostęp do witryny, agent użytkownik będzie „WAHAHAHA”

Ponadto niektóre przeglądarek internetowych dostępnych na rynku, takich jak przeglądarka delfinów pozwala użytkownikowi wprowadzić dowolną kombinację agentów użytkownika.

Dlatego to, co myślę, że jest statystyka Odwiedzin zbierane od agenta użytkownika będzie nie tak niezawodny, polecam znaleźć inny kryteria zebrać hit liczyć informacje =]

+1

Tak, wszystkie nagłówki żądania HTTP są generowane przez klienta (potencjalnie niezaufanego).Jednak tylko niewielki odsetek użytkowników modyfikuje ich ciąg znaków dla użytkownika, więc z przyczyn praktycznych te statystyczne wartości odstające nie będą miały zauważalnego wpływu na wyniki, których poszukuje OP. – iX3

5

Moim zdaniem liczyć przeboju od różnych agentów użytkownika na urządzeniu z Androidem powinieneś wskazać jeden adres: URL wskazujący na serwer. Podczas uruchamiania aplikacji wyślij User Agent i na twój serwer.

ten kod, aby uzyskać kliencka

 WebView mes = new WebView(this); 
     String str = mes.getSettings().getUserAgentString(); 
     Log.i("My User Agent", str); 

Na Samsung Tablet 10,1 cala emulatorze mam kliencka

Mozilla/5.0 (Linux; U; Android 3.0; en-us; sdk Build/HONEYCOMB) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13 

i na emulatorze Nexus mam

Mozilla/5.0 (Linux; U; Android 4.0.3; en-us; google_sdk Build/MR1) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 
+0

idealne! właśnie tego szukałem :) – Dediqated

Powiązane problemy