[Javascript] 웹/앱, 어플/브라우저 구분하기
var filter = "win16|win32|win64|mac|MacIntel";
if ( navigator.platform ) {
if ( filter.indexOf(navigator.platform.toLowerCase() < 0 ) {
// 모바일, 태블릿으로 접속한 경우 처리
}
}
[ 모바일,태블릿과 PC를 구분하는 방법]
기존 사용하고 있던 모바일,태블릿 / PC 구분을
어플리케이션 / 브라우저 구분으로 변경하려고 한다.
결과부터 말하자면, Native 소스 (어플) 의 userAgent 의 값을 이용하면 가능하다.
세팅하는 방법은 다른 블로그를 찾다보니 다음과 같이 가능하다고 한다.
webView.getSettings().setUserAgentString(webView.getSettings().getUserAgentString + " 구분자값");
세팅을 하게 되면, 크롬의 개발자도구 Network - Header - User-Agent 의 제일 끝 부분.
하단 이미지의 빨간색 부분에 구분자값이 세팅이 된다.
스크립트 단에서 userAgent를 가져와서, 다음과 같이 필요한 작업에 사용하면 된다.
var uAgent = navigator.UserAgent.toLocalLowerCase();
if ( uAgent.search("세팅한 구분자값") > -1 ) {
// 처리 내용
}
현재 내 입장에선 Native 소스에 직접적으로 접근은 불가능한 상황이었는데,
다행히도 userAgent 값에 어플 접속 구분자(app-android, app-ios)가 등록되어 있어서 쉽게 처리할 수 있었다.
최근댓글