JavaScript
javascript 안드로이드 아이폰 구분
강릉꿀주먹
2019. 7. 2. 22:39
하이브리드 및 웹 앱을 만들다보면 Android 와 IOS를 구분해야하는 부분들이 생긴다.
자바스크립트에서 접속자의 브라우저 정보 및 디바이스 정보를 가지고있는 User-Agent라는 객체를 사용하여 Android와 IOS를 구분할 수 있다.
다음은 User-Agent를 통해 얻어낸 Android, IOS 각 기기의 정보이다.
Android
Mozilla/5.0 (Linux; Android 9; SM-G955N Build/PPR1.180610.011; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3770.89 Mobile Safari/537.36
IOS
Mozilla/5.0 (iPhone; CPU iPhone OS 12_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/71.0.3758.78 Mobile/15E148 Safari/605.1
각 정보를 보면 알 수 있듯이 안드로이드폰에서는 Android, 아이폰에서는 iPhone이라는 문자열을 가지고 있는것을 볼 수 있다.
이걸 통해서 아이폰과 안드로이드폰을 구분할 수 있다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
function checkMobile(){
var varUA = navigator.userAgent.toLowerCase(); //userAgent 값 얻기
if ( varUA.indexOf('android') > -1) {
//안드로이드
return "android";
} else if ( varUA.indexOf("iphone") > -1||varUA.indexOf("ipad") > -1||varUA.indexOf("ipod") > -1 ) {
//IOS
return "ios";
} else {
//아이폰, 안드로이드 외
return "other";
}
}
Colored by Color Scripter
|
추가로 모바일인지를 구분이 필요할때가 있다.
1
2
3
4
5
6
7
8
9
|
var mobile = (/iphone|ipad|ipod|android/i.test(navigator.userAgent.toLowerCase()));
if (mobile) {
//모바일 처리
}else{
//비 모바일 처리
}
Colored by Color Scripter
|
해당 체크로 모바일인지 비모바일 채널인지를 구분하면 된다.