[Javascript] Web Mobile 에서 App실행 (앱링크)
2019. 5. 10. 17:14ㆍJAVASCRIPT
Web Mobile 에서 APP 을 실행 할수 있다.
이를 앱링크 or 딥링크 라고 한다.
ex) 인스타 그램의 예를 들어
<a href="instagram://media" target="blank">
와 같이 작성을 하면 핸드폰 내에 설치되어져있는 인스타그랩 앱이 실행이 된다.
이슈 1 . Android 의 경우와 IOS 의 경우 앱 실행 경로가 다르다.
[Android 의 경우]
<a href="intent://instagram.com/#Intent;package=com.instagram.android;scheme=https;end" target="blank">
[IOS 의 경우]
<a href="instagram://media" target="blank">
이슈 2. 해당 앱이 나의 핸드폰에 설치가 되어져있지 않는경우
Android 의 경우 위에 적힌 경로를 그대로 사용하면 본인의 핸드폰에 인스타그램이 설치가 되어져있는 경우 인스타 그램이 실행 되어지고 만약 설치가 되어져있지 않다면 레이어 팝업 형태로 구글 앱스토어의 설치 화면이 뜨게 되어서 별다른 이슈가 없다.
IOS 의 경우 위에 적힌 경로를 그대로 사용하면 본인의 핸드폰에 인스타그램이 설치가 되어져있는 경우 인스타 그램이 실행 되지만 만약 설치가 되어져있지 않다면 아무런 일도 발생하지 않아서 사용자들이 이것이 제대로 실행이 되엇는가를 알 방법이 없다. 그래서 IOS 의 경우 별도의 개발이 필요하다.
<script>
function ios_go_url(){
var url = "instagram://media";
setTimeout( function() {
window.open("https://itunes.apple.com/kr/app/instagram/id389801252?mt=8");
}, 1000);
location.href = url;
}
</script>
소스를 살펴보면 셋 타임아웃 1000을 걸어서 1초 이후에 아무일도 발생을 하지 않는다면 ios 앱스토어로 이동하게 소스를 작성하면 된다.
전체 소스를 보면 다음과 같다.
<script>
function mo_chk(){
var os;
var mobile = (/iphone|ipad|ipod|android/i.test(navigator.userAgent.toLowerCase()));
if (mobile) {
var userAgent = navigator.userAgent.toLowerCase();
if (userAgent.search("android") > -1){
return os = "android";
}else if ((userAgent.search("iphone") > -1) || (userAgent.search("ipod") > -1) || (userAgent.search("ipad") > -1)){
return os = "ios";
}else{
return os = "otehr";
}
} else {
return os = "pc";
}
}
function action_app_instagram(android_url , ios_url , ios_appstore_url){
var result_mo_chk = mo_chk();
if(result_mo_chk!="pc"){
if(result_mo_chk == "ios"){
setTimeout( function() {
window.open(ios_appstore_url);
}, 1500);
location.href = ios_url;
}else{
location.href = android_url;
}
}
}
</script>
<html>
<body>
<span onclick="action_app_instagram('intent://instagram.com/#Intent;package=com.instagram.android;scheme=https;end', 'instagram://media', 'https://itunes.apple.com/kr/app/instagram/id389801252?mt=8')">
Instagram App 실행
</span>
</body>
</html>
'JAVASCRIPT' 카테고리의 다른 글
[Javascript] 이메일 정규식 사용 형식 체크 (1) | 2020.10.05 |
---|---|
[Javascript] 파라미터 값 받기 (0) | 2019.05.21 |
[Javascript] 클립보드 복사 (0) | 2019.05.13 |
[Javascript] KAKAO 공유하기 기능 (0) | 2019.05.10 |
[javascript] SELECT 옵션 의 첫번째 INDEX 선택 (0) | 2019.04.04 |