iOS webview에서 kakaoLink 사용 설정 문의

안녕하세요.

하이브리드 앱에서 카카오 javascript sdk 를 이용하려면
iOS의 경우 아래와 같이 메소드 설정해줘야 된다고 설명되어 있는데요.
제가 초보라서 그런데, 아래 코드를 ViewController에 넣기만 했더니, 여전히 카카오 링크가 작동하질 않습니다.
아래 메소드를 override하거나 어떤 이벤트와 연결해야 할 것 같은데,
그 부분에 대해서 추가적인 조언 부탁드립니다.

func webView(_ webView: WKWebView,
decidePolicyFor navigationAction: WKNavigationAction,
decisionHandler: @escaping (WKNavigationActionPolicy) -> Void
) {
print(navigationAction.request.url?.absoluteString ?? “”)

// 카카오 SDK가 호출하는 스킴인 경우 open을 시도합니다.
if let url = navigationAction.request.url
    , ["kakaokompassauth", "kakaolink"].contains(url.scheme) {

    // 카카오톡 실행
    UIApplication.shared.open(url, options: [:], completionHandler: nil)

    decisionHandler(.cancel)
    return
}

// 서비스 상황에 맞는 나머지 로직을 구현합니다.


decisionHandler(.allow)

}

1개의 좋아요

구글링으로 해결했습니다.

webview를 로드하기 전에 아래 코드를 한줄 추가해주었더니 되네요.

myWebView.navigationDelegate = self

감사합니다.

1개의 좋아요