티스토리 뷰
오랜만에 글을 작성하네요.
요즘 업무가 바쁘다 보니...
일단 거두절미하고 웹페이지에서 앱을 호출할때 스키마를 이용해서 호출할수 있습니다.
그런데, 앱이 설치가 되어 있으면 상관이 없는데, 설치가 안되어 있을 경우에는 404 Not found가 발생하게 되죠.
이러한 경우에 앱 설치 확인하는 방법입니다.
어플의 매니페스트에는 적당하게 작성을 하여줍니다.
<intent-filter >
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="showmethemoney" host="mrgamza" />
</intent-filter>
이렇게 되면, 웹페이지에서는 다음과 같이 합니다.
<script>
function checkApplicationInstall() {
//단말 로컬에 있는 어플리케이션 실행
document.checkframe.location = "showmethemoney://mrgamza";
//1초 후에 다음 펑션을 수행
setTimeout("checkApplicationInstall_callback()", 1000);
}
function checkApplicationInstall_callback() {
try {
var s = document.checkframe.document.body.innerHTML;
// 어플리케이션 설치되어있음
} catch (e) {
// 어플리케이션 설치 안 되어있음
//어플이 설치 안되어 있는 상태이므로 마켓으로 연결한다.
location.replace("intent://viewer?#Intent;
scheme='com.wiz.bellringallandroid';
action='android.intent.action.VIEW';
category='android.intent.category.BROWSABLE';
package=com.wiz.bellringallandroid;end");
}
}
</script>
<input type="button" value="check app install" onclick="checkApplicationInstall()"/><br/>
<iframe id="checkframe" name="checkframe" src="check.html" width="1" height="1"></iframe>
잘 활용하면 되겠네요.
'Mobile > Android' 카테고리의 다른 글
[Android]RelativeLayout의 속성 (0) | 2015.07.06 |
---|---|
[Android]manifest파일의 meta-data 사용하기 (0) | 2015.06.04 |
[AndroidStudio]단축키2 (0) | 2015.05.08 |
[Android]프로그래밍 작성시 성능예시 (0) | 2015.05.07 |
[Android]manifest의 permission (0) | 2015.05.07 |
- Total
- Today
- Yesterday
- nodejs
- SWIFT
- Spring
- war
- Gradle
- rxswift
- git
- android
- Codable
- intellij
- enum
- CentOS
- docker
- go
- Windows
- windows10
- Java
- MySQL
- Linux
- golang
- Python
- php
- tomcat
- Kotlin
- ios
- github
- ubuntu
- cocoapods
- Xcode
- centos8
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |