Notice
Recent Posts
Recent Comments
Link
투케이2K
16. (ios/swift) 외부 앱 실행 및 앱 스토어 이동 실시 - 스키마 scheme 본문
[개발 환경 설정]
개발 툴 : XCODE
개발 언어 : SWIFT
[방법 설명 : LSApplicationQueriesSchemes]
[소스 코드]
// [외부 앱 실행 실시]
/*
1. https://www.apple.com/kr/ 사이트에 접속해서 특정 앱 주소를 확인합니다
2. 크롬 앱 id 확인 : https://apps.apple.com/kr/app/google-chrome/id535886823 [id535886823 부분을 사용해서 외부앱을 실행합니다]
3. 크롬 스키마 확인 : googlechrome://
4. 로직 : 외부앱 설치되었을 경우 >> 외부앱 실행 (스키마) / 외부앱이 설치되지 않은 경우 앱 스토어 이동 (앱 id)
5. 호출 예시 : goOutApp(_scheme: "googlechrome://", _id: "id535886823")
*/
func goOutApp(_scheme : String, _id : String) {
let _appSchme = _scheme
let _storeUrl = "itms-apps://itunes.apple.com/app/" + _id
print("")
print("====================================")
print("[goOutApp : 외부 앱 실행 실시]")
print("_appSchme : ", _appSchme)
print("_storeUrl : ", _storeUrl)
print("====================================")
print("")
//스키마명을 사용해 외부앱 실행 실시
if let openApp = URL(string: _appSchme), UIApplication.shared.canOpenURL(openApp) {
print("")
print("====================================")
print("[goOutApp : 외부 앱 열기 수행]")
print("====================================")
print("")
// 버전별 처리 실시
if #available(iOS 10.0, *) {
UIApplication.shared.open(openApp, options: [:], completionHandler: nil)
}
else {
UIApplication.shared.openURL(openApp)
}
}
//스키마명을 사용해 외부앱 실행이 불가능한 경우 (외부앱이 설치되지 않은 경우)
else {
// 외부앱 이동 로직 처리 실시
if let openStore = URL(string: _storeUrl), UIApplication.shared.canOpenURL(openStore) {
print("")
print("====================================")
print("[goOutApp : 앱 스토어 이동 실시]")
print("====================================")
print("")
// 버전별 처리 실시
if #available(iOS 10.0, *) {
UIApplication.shared.open(openStore, options: [:], completionHandler: nil)
}
else {
UIApplication.shared.openURL(openStore)
}
}
}
}
[결과 출력]
반응형
'IOS' 카테고리의 다른 글
18. (ios/swift) 프리퍼런스 preference 반영구적 데이터 저장 실시 - UserDefaults (0) | 2021.10.23 |
---|---|
17. (ios/swift) url scheme 스키마 데이터 전송 및 받은 데이터 확인 (0) | 2021.10.22 |
15. (ios/swift) 외부 링크 웹 사이트 이동 실시 - URL , SFSafariViewController (0) | 2021.10.20 |
14. (ios/swift) http 통신 get , post , post body json 요청 실시 - URLSession (0) | 2021.10.19 |
13. (ios/swift) 실시간 비콘 beacon 신호 활성 실시 (0) | 2021.10.19 |
Comments