2016년 11월 9일 수요일

Today Extension (widget) 연결된 App 열기 @@ in Swift3.0

Today Extension (widget)이 실행되고 storyboard 가 나타났을때
View 나 button 을 클릭하여 연결된 앱을 열고자 할때 사용하는 방법이다.

일단 extensionContext 속성을 사용해야한다
일단 Today Extension 을 생성 했다는 가정하에 설명하도록 하겠다
Today Extension에서 앱을 실행하기 위해선  해당 앱의 CFBundleURLSchemes 값을 정의 해야한다
일단 해당앱의 Info.plist 파일을 Source Code 로 연다




위 이미지 처럼 코드를 추가해준다
설명하자면  앱을 식별할 수 있도록 App 의 URLName 과  URLSchemes 을 선언해주는 것이다
Today Extension 에서 아래 함수 (openApp()를 호출할 수 있도록 버튼이나 뷰를 만들고
TodayViewController 에 아래 메소드를 추가한다

func openApp(_ sender: AnyObject) {
    // UrlName = com.Tester.openApp    <ㄱ
    // URLSchemes = openApp            <-  두값이 같아야함
    let url:NSURL? = NSURL(string: "openApp:")  
    // : <- 잊지말고 붙여넣자

    if let appurl = url{

    self.extensionContext!.open(appurl as URL, completionHandler: nil)

    }

}

다시 빌드하여 View 나 button을 터치하여 테스트하면 앱이 열리는 것을 확인 할 수 있다.



댓글 없음:

댓글 쓰기

추천 게시물

애플 개발자 등록방법 2016년 5월 8일 기준!!

애플 개발자 등록 절차 1. 개발자 등록 페이지 이동    애플 개발자 로그인 > Account 페이지 이동 > 하단 영역 클릭 (이미지 참조)   >> Enroll 클릭 >> 무조건 승인!! ...