programing

Javascript / jQuery를 통해 Android 전화기 탐지

closeapi 2023. 8. 14. 22:52
반응형

Javascript / jQuery를 통해 Android 전화기 탐지

사용 중인 장치가 모바일 웹 사이트용 안드로이드인지 어떻게 감지합니까?

안드로이드 플랫폼에 특정 CSS 속성을 적용해야 합니다.

감사해요.

http://davidwalsh.name/detect-android 에서 확인해 보십시오.

JavaScript:

var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("android") > -1; //&& ua.indexOf("mobile");
if(isAndroid) {
  // Do something!
  // Redirect to Android-site?
  window.location = 'http://android.davidwalsh.name';
}

PHP:

$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
if(stripos($ua,'android') !== false) { // && stripos($ua,'mobile') !== false) {
  header('Location: http://android.davidwalsh.name');
  exit();
}

편집 : 일부 의견에서 지적한 것처럼 99%의 경우에 이 기능이 작동하지만 일부 에지 사례는 다루지 않습니다.JS에서 훨씬 더 발전된 방탄 솔루션이 필요하다면 platform.js : https://github.com/bestiejs/platform.js 을 사용해야 합니다.

이 원라이너는 어떻습니까?

var isAndroid = /(android)/i.test(navigator.userAgent);

i대/소문자를 구분하지 않는 일치를 수행하는 데 사용됩니다.


Cordova AdMob 테스트 프로젝트에서 가져온 기술: https://github.com/floatinghotpot/cordova-admob-pro/wiki/00.-How-To-Use-with-PhoneGap-Build

Michal의 답변이 가장 좋다고 생각하지만, 우리는 한 걸음 더 나아가 원래 질문에 따라 Android CSS를 동적으로 로드할 수 있습니다.

var isAndroid = /(android)/i.test(navigator.userAgent);
if (isAndroid) {
    var css = document.createElement("link");
    css.setAttribute("rel", "stylesheet");
    css.setAttribute("type", "text/css");
    css.setAttribute("href", "/css/android.css");
    document.body.appendChild(css);
}
;(function() {
    var redirect = false
    if (navigator.userAgent.match(/iPhone/i)) {
        redirect = true
    }
    if (navigator.userAgent.match(/iPod/i)) {
        redirect = true
    }
    var isAndroid = /(android)/i.test(navigator.userAgent)
    var isMobile = /(mobile)/i.test(navigator.userAgent)
    if (isAndroid && isMobile) {
        redirect = true
    }
    if (redirect) {
        window.location.replace('jQueryMobileSite')
    }
})()

js 버전, 아이패드도 잡습니다.

var is_mobile = /mobile|android/i.test (navigator.userAgent);

언급URL : https://stackoverflow.com/questions/6031412/detect-android-phone-via-javascript-jquery

반응형