Chcę wykryć z javascript rodzimej przeglądarki Android (ten, który jest zainstalowany na każdym telefonie z systemem Android).Wykrywanie Javascript Javascript rodzimej przeglądarki
Czego powinienem szukać w useragencie?
Chcę wykryć z javascript rodzimej przeglądarki Android (ten, który jest zainstalowany na każdym telefonie z systemem Android).Wykrywanie Javascript Javascript rodzimej przeglądarki
Czego powinienem szukać w useragencie?
To powinno zadziałać.
var nua = navigator.userAgent;
var is_android = ((nua.indexOf('Mozilla/5.0') > -1 && nua.indexOf('Android ') > -1 && nua.indexOf('AppleWebKit') > -1) && !(nua.indexOf('Chrome') > -1));
spróbować czegoś takiego:
var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile");
if(isAndroid) {
// Do something
}
lub
check URL: http://davidwalsh.name/detect-android
Native przeglądarka nie mogliśmy wykryć na pierwszy iść sama, wykorzystując wspomniany powyżej kod:
var nua = navigator.userAgent;
var is_android = ((nua.indexOf('Mozilla/5.0') > -1 && nua.indexOf('Android ') > -1 && nua.indexOf('AppleWebKit') > -1) && !(nua.indexOf('Chrome') > -1));
jak dla większości urządzeń mamy następujące jako agenta użytkownika dla przeglądarki Chrome:
iw natywnej przeglądarki:
Przeprowadziłem tę obserwację dla Samsunga Galaxy S3, htc desire, Asus Zenfone5.
Okazało się, że "Chrome/30.0.0.0" lub "chrome /" wraz z wersją są obecne w przypadku większości urządzeń, w tym Zenfone 5, Samsung Galaxy s3. Ale "wersja /" nie. Obecność w obiekcie użytkownika użytkownika jest wystarczająca, aby odróżnić natywną od Chrome.
Użyliśmy następujący kod:
var ua = navigator.userAgent;
var is_native_android = ((ua.indexOf('Mozilla/5.0') > -1 && ua.indexOf('Android ') > -1 && ua.indexOf('AppleWebKit') > -1) && (ua.indexOf('Version') > -1));
Nadzieję, że to przydatne dla Ciebie zbyt ... :)
Czy to nadal ma zastosowanie w macierzystej przeglądarce Androida 5.1.1? Ponieważ mogę dostać się do 'var is_native_android = ua.indexOf (" android ")> -1 && ua.indexOf (" mobile ") && ua.indexOf (" chrome ")> -1', ale wszystkie inne identyfikatory wydają się nie zdać. Wygląda na to, że natywna przeglądarka używa AppleWebkit - Mozilla/5.0. – cptstarling
Wydaje się, że działa to zarówno w starszych, jak i nowszych przeglądarkach giełdowych z Androidem. – dvLden
To nie zadziała w systemie Android 6.0.1 (przynajmniej nie w moim amerykańskim T-mobile S6). Natywna przeglądarka jest teraz oparta na Chrome i naprawdę trudno jest odróżnić. Jedyną różnicą, jaką zobaczyłem, były słowa specyficzne dla producenta (dla mnie kilka razy powiedział Samsung). S7 mojego przyjaciela nie ma już natywnej przeglądarki, więc Chrome jest teraz rodzimą przeglądarką dla tego telefonu. Ale dobre jest to, że nie ma już znaczenia, ponieważ oba powinny być podobne – Francisc0
Jeden rozmiar nie pasuje do wszystkich. Niektóre telefony z Androidem udają iPhone'a za użytkownika iPhone'a. – Raptor
Nie rozumiem "wykrywania cech", czy możesz wyjaśnić? – Razvan
[agent użytkownika przeglądarki javascript dla systemu Android] (https://www.google.com/search?q=javascript+anduser+użytkownika) - [Wykrywanie go za pomocą funkcji google] (https://www.google.com/ search? q = js + feature + detection) – Trey