모바일 웹 브라우저에서 앱 설치여부에 따라 앱 또는 마켓으로 이동시키기 > 모바일어플제작

본문 바로가기

팝업레이어 알림

팝업레이어 알림이 없습니다.
사이트 내 전체검색


회원로그인

카카오톡친구추가 제임스 SNS마케팅 사용자모임 네이버밴드초대

접속IP:3.231.226.211



모바일어플제작

모바일 웹 브라우저에서 앱 설치여부에 따라 앱 또는 마켓으로 이동시키기

페이지 정보

작성자 운영자 작성일16-12-24 02:04 조회288회 댓글1건

본문

 

 

모바일 웹 브라우저에서 앱 설치여부에 따라 앱 또는 마켓으로 이동시키기

 

 

 

먼저 아이폰의 경우..

간단하다!

 

var userAgent = navigator.userAgent;

var visitedAt = (new Date()).getTime(); // 방문 시간

 

if (userAgent.match(/iPhone|iPad|iPod/)) {

   setTimeout(

      function() {

          if ((new Date()).getTime() - visitedAt < 2000) {

               location.href = "{마켓 주소}";

          }

       }, 500);

 

   setTimeout(function() { 

        location.href = "{커스텀 스킴 주소}";

    }, 0);

}

 

셋타임아웃을 이용해서 커스텀 스킴을 호출해보고 응답이 없으면

앱이 없다는 뜻이므로, 일정 시간 뒤에 마켓으로 이동시킨다.

 

 

 

안드로이드의 경우..

크롬브라우저와 기본 브라우저들에서의 동작 방식이 다르므로

분기를 해주어야 한다.

 

 

var userAgent = navigator.userAgent;

 

if (userAgent.match(/android/)) {

    if (userAgent.match(/Chrome/)) {

         // 안드로이드의 크롬에서는 intent만 동작하기 때문에 intent로 호출해야함

         setTimeout(function() {

              location.href = "intent://커스텀스킴주소#Intent; scheme=스킴; action=..;category=..; package=com.android.xxx; end;";

         }, 1000);

    } else {

        // 크롬 이외의 브라우저들

        setTimeout(

           function() {

              if ((new Date()).getTime() - visitedAt < 2000) {

                 location.href = "{마켓 주소}";

              }

          }, 500);


 

          var iframe = document.createElement('iframe');

          iframe.style.visibility = 'hidden';

          iframe.src = '{커스텀 스킴 주소}';

          document.body.appendChild(iframe);

          document.body.removeChild(iframe); // back 호출시 캐싱될 수 있으므로 제거

     }

}


 

크롬의 경우 인텐트 주소로 호출하면 앱설치 여부를 알아서 처리해준다.

 

* 참고 : 안드로이드 크롬의 경우 특정 버전부터 

커스텀주소 실행이 '버튼'을 눌러야만 동작하도록 변경되었다.

자동으로 커스텀url로 리다이렉트 시키는 것은 이전 버전에서만 지원한다.

 

크롬 이외의 브라우저의 경우는 iframe을 사용해서 이동시켜야 한다.

커스텀 스킴을 호출하고 없으면 마켓으로 이동시킨다는 개념은 IOS와 같다.

다만 스킴을 호출하는 것을 iframe을 통해서 해야한다.

보이지 않는 iframe을 이용해서.

 

 

 

작년 11월 중순 쯤 페이스북에 안드로이드의 경우만 

외부링크를 클릭할 때 페이스북의 인앱브라우저를 호출하도록 바뀌었다.

 

 

 

 

 

http://marobiana.tistory.com/111

  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기
  • 카카오스토리로 보내기

댓글목록

모바일어플제작 목록

게시물 검색


홈쇼핑 인기상품을 국내 최저가로 구매하실 분들만 들어 오세요.^0^

*패쇄몰*이라 국내 최저가가 가능합니다.

새로운 상품을 매일 공동구매로 진행.

*패쇄몰*이라 싸게 판매가 되어 금방 매진이 됩니다.(꼭 참고 하세요)

오셔서 득템 하세요. ^0^

후회하지 않습니다.^0^

교환,반품,A/S도 철저히 이루어 집니다.

아래 주소로 들어오시면 됩니다.^0^

▶밴드 바로가기 클릭◀
https://bit.ly/2q69oFl

접속자집계

오늘
222
어제
516
최대
5,398
전체
2,031,782
Copyright © http://jamesoft.kr All rights reserved.
상단으로
모바일 버전으로 보기