웹에서 앱 설치 여부를 확인하자

Web 에서 앱 설치 여부를 확인 하자

1. 내용

  • 인터벌 함수를 이용해서 hidden 을 계속 확인한다.
  • 타임아웃 함수를 이용해서 특정시간이 되면 앱이 설치 안되어있다고 판단한다.

2. 문제

  • 단순참고용 정도로 사용하면 좋을거 같습니다.
  • 많이 테스트 안해보았습니다.
  • document.webkitHidden   document.hidden 를 이용해서 설치 여부를 확인 하는 방법 입니다.
  • 크롬에서 지원하는 intent 방식을 사용하면 항상 마켓이 실행되서 체크하기 어려우니 꼭 커스텀 스킴으로 테스트 해야 합니다.

3. 코드

var appSchem = 'mayapp://launch?Data=abcdefg';
    
isMyApp();
location.href = appSchem;

function isMyApp(){
  function clearTimers(){
        clearInterval(heartbeat);
        clearTimeout(timer);
    }
 
    function intervalHeartbeat(){
        if(document.webkitHidden || document.hidden){
            clearTimers();
            console.log('앱이 설치 되어 있습니다.');
        }
    }
    heartbeat = setInterval(intervalHeartbeat, 200);
    var deLay = 1000;
    timer = setTimeout(function() {
        console.log('앱이 없습니다.');
    }, deLay);
  }
}

PyeongHo

즐겁게 또 즐겁게