Javascript로 앱 띄우기

kang·2020년 4월 7일
0

javascript

목록 보기
1/5

하이브리드 웹 앱 프로젝트를 진행할 당시 내 디바이스기기에 특정 앱이 있는가 없는가를 판단하여 없을 경우에 다운받는 playStore로 보내던가, 있다면 app을 띄우는 작업을 했었다.
갑자기 Pl님의 요청으로인해...이때만 해도 난 js로 이런 기능을 할 수 있을지 의문이였지만,
역시 google..ㅋㅋ
(난 하이브리드 웹 앱 개발자였고, 맞은편에는 앱 개발자들이 있었다.)
프로젝트에서 소스를 가져나올 수 없기에 그 때 기억을 되살려보자!

Check List!
1.app 스킴정보
2.play store 주소 (안드로이드, ios)
3.app이 있다면 app을 띄운 후, 보여야 할 페이지 경로(이 플젝에서는 특정 단어를 약속하고,
쿼리 값에 특정 단어가 있다면 app을 띄우고 그렇지 않다면 하이브리드 웹 앱을 띄우기로 약속했다. 그 특정 단어 뒤의 쿼리 값으로 보여야 할 페이지로 Go!)

참고로 앱을 띄웠던 플젝에서는 interface를 제공해서 접속한 디바이스 OS를 알려주는 기능도 있어서 작업할 때 수월했다.

const [storeUrl, setStoreUrl] = useState(null);
const iosStoreUrl = "appStore Url";
const androidStoreUrl = "appStore Url";

function openStore( () => {
    const startTime = +new Date();
    setTimeout(
        function() {
            var now = +new Date();
            if ( now - startTime < 1000){                
    		android === 'android' ? 
              setStoreUrl(androidStoreUrl) :
              setStoreUrl(iosStoreUrl);
            }
           	location.href = storeUrl;
        }
    , 500)
 android === 'android' ? 
   location.href = //안드로이드 앱 스킴 
   : location.href = //아이폰 앱 스킴
})

위 코드 방식으로 구현했었던 기억이 가물가물 하지만...앞으로 했던 내용들은 꼭..블로그에 남기도록 해야겠다.
방식은 링크를 통해 하이브리드 웹 앱으로 접속했을 때, 쿼리값에 약속한 단어가 있을 경우에 openStore()를 호출하여 접속한 디바이스에서 앱이 호출되지 않으면 스토어로 보내는 방식으로 작업하였다.

profile
ksb

0개의 댓글