차근차근/JAVA Script

[JS]자바스크립트로 user agent를 통해 모바일 인식하기

예쁜꽃이피었으면 2015. 10. 27. 11:31

[JS]자바스크립트로 user agent를 통해 모바일 인식하기

http://nubiz.tistory.com/565



대부분의 사이트에서 모바일 환경을 인식하기 위해 user agent 정보를 활용합니다.


User agent란 원래 사용자를 대신하는 소프트웨어입니다.

Http에서는 user agent header를 통해 사용자의 환경을 인식하게합니다.


예를들어 스마트폰에서 티스토리 링크를 클릭하면 ~~tistory.com/m/ 으로 시작하는 모바일웹 사이트로 Redirect됩니다.

티스토리서버가 사용자의 user agent정보를 읽어서 모바일환경임을 인식하면 모바일웹으로 이동시키게 되는 것이죠.


아래에 현재 당신의 User agent정보가 나타날 것입니다.

Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36



UserAgent를 통한 모바일 인식 자바스크립트

if(navigator.userAgent.match(/Mobile|iP(hone|od)|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/)){

  //스마트폰일 때 실행 될 스크립트

}

User agent에는 사용자 기기에대한 정보도 들어있기 때문에, 모바일환경을 인식할 수 있습니다.

위의 코드를 사용하면 태블릿을 제외한 스마트폰에서만 스크립트를 실행할 수 있습니다.


if(navigator.userAgent.match(/Android|Mobile|iP(hone|od|ad)|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/)){

  //모바일(스마트폰+태블릿)일 때 실행 될 스크립트

}

이 코드는 안드로이드 태블릿과 아이패드 정보가 추가된 스크립트입니다.



만일 모바일을 제외한 PC에서만 실행할 스크립트는 다음처럼 작성하면 됩니다.

if(!navigator.userAgent.match(/Mobile|iP(hone|od)|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/)){

  //태블릿,PC에서만 실행 될 스크립트

}

if(!navigator.userAgent.match(/Android|Mobile|iP(hone|od|ad)|BlackBerry|IEMobile|Kindle|NetFront|Silk-Accelerated|(hpw|web)OS|Fennec|Minimo|Opera M(obi|ini)|Blazer|Dolfin|Dolphin|Skyfire|Zune/)){

  //PC에서만 실행 될 스크립트

}



반응형