UIWebView 에서 카카오 플러스 친구 링크를 통해 카카오톡을 열려고 하는데.. 왜 안 열릴까요.?

Native iOS Application 에서 UIWebView 를 사용해서

페이지를 뿌려주고 있습니다.

해당 페이지에는 클릭 시 카카오톡 플러스친구 대화창으로 넘어가는 링크가 있습니다.

<a href="http://pf.kakao.com/_******/chat" />

그런데, 클릭을 하면 카카오톡 앱 스토어 링크로 넘어갑니다.
포럼의 글들을 보고 몇가지를 추가했습니다.

  1. Info.plist 에는 아래 내용을 추가했습니다.
 <key>KAKAO_APP_KEY</key>
    <string>네이티브 앱 키</string>
    <key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleTypeRole</key>
            <string>Editor</string>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>kakao네이티브앱키</string>
            </array>
        </dict>
    </array>
	<key>LSApplicationQueriesSchemes</key>
	<array>
        <string>kakao네이티브 앱키</string>
        <string>kakaolink</string>
        <string>kakaotalk-5.9.7</string>
	</array>
  1. Frameworks 에는
    KakaoCommon.framework 와
    KakaolusFriend.framework 를 추가한 상태입니다.

그래도 여전히 링크를 누르면 카카오톡 앱스토어 페이지로 넘어갑니다.
어디를 더 수정해야 카카오톡으로 바로 열릴까요…?

네이티브 방식의 iOS 앱이라면 WebView내부의 Link보다는 Native언어를 통해서접근하는것이 맞지 않나 생각합니다. 이 경우에는 SWIFT를 사용하여 openIUrl()을 사용해보세요! 그렇게 한다면 Safari를 통해서 Link가 연결되고 동시에 일치하는 URL의 카톡 채팅방으로 넘어갑니다

네, openUrl()로 해서 넘기는 부분도 있습니다.

다만 저 페이지는 웹에서 원하는 형태로 편집하고 그대로 네이티브 앱에서 보여주는 페이지라서
웹뷰의 링크 방식을 사용한 부분입니다.

다른 네이티브 부분에서는
if #available(iOS 10.0, *) {
UIApplication.shared.open(URL(string:kakaourl), options: [:])
} else {
UIApplication.shared.openURL(URL(string:kakaourl))
}

위 소스를 사용하고 있구요. 플러스친구 쪽으로 잘 넘어갑니다.

그런데, 웹뷰 안에서 실행하면
같은 소스를 사용해도 웹뷰안에서 카카오톡 안내 페이지가 나오면서
스토어로 넘어가더라구요.

뭘 좀 조금만 손대면 될거 같은데 안되서 답답하네요 ㅠㅠ

UIWebView 로 해서 문제가 있었던 듯 합니다.
WKWebView 로 변경하고 나니 카카오톡 플러스 친구로 잘 열리네요~

1개의 좋아요