안녕하세요. 문제를 겪고 있습니다 ㅠㅠ

문의 시, 사용하시는 SDK 버전 정보와 디벨로퍼스 앱ID를 알려주세요.

안녕하세요 flutter에서 카카오연동을 개발 중에 있습니다.

flutter_kakao_sdk를 설치해서 잘 이용하던 중에,
회사내의 에어브릿지 작업으로 인해 deeplink를 핸들링해야하는 이슈가 생겼습니다.

그에 따라 Appdelegate.swift에
해당 부분이 추가 되었습니다.

  override func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
      
      AirbridgeFlutter.deeplink.handleURLSchemeDeeplink(url)
      
      return true
  }  

문제는 해당 부분이 생기고 나서부터,
카카오톡 로그인 이후에 url 도 해당 부분을 타게 됩니다…

이런 경우
카카오톡 연동하기 ios 부분을 참고해서,
ios sdk 를 설치해서 따로 해줘야할까요…?

굉장히 비효율적인거 같은데,
이게 최선일지 좋은 좋은 방법이 있을지 하여
여쭤봅니다.

override 된 부분에서 오는 url은

kakao00000000000000000000000000://oauth?code=123123123123123123123

와 같이 옵니다!

안녕하세요.

아래 가이드를 참고하시어 카카오톡에서의 호출을 우선 처리하도록 부탁드립니다.

https://developers.kakao.com/docs/latest/ko/kakaologin/ios#before-you-begin-setting-for-kakaotalk- 카카오톡으로 로그인을 위한 설정


위에 안내드린 내용은 iOS SDK 사용하실 때 가이드로 flutter 에서는 사용하실 수 없고 직접 구현 하셔야 합니다.
샘플 코드를 제공해 드리도록 하겠습니다.

안녕하세요

kakao_flutter_sdk를 사용하실 때 별도로 안드로이드용, iOS용 카카오SDK를 추가하실 필요는 없습니다.

첨부해주신 코드를 확인했을 때 url 스킴을 사용하는 경우는 모두 AirbridgeFlutter.deeplink.handleURLSchemeDeeplink(url) 호출하도록 되어있는 것으로 보이는데요, 카카오에서 사용하는 url 스킴은 모두 prefix로 kakao 를 붙이고 있기 때문에 아래의 샘플 코드와 같은 형태로 수정하시면 정상적으로 동작할 것 같습니다.


override func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
    if url.absoluteString.starts(with: "kakao") {
        return super.application(app, open: url, options: options)
    }
        
    // 생략
}

2개의 좋아요

까울… 미쳤습니다 ㅠㅠ 해결에 도움 주셔서 너무 너무 감사드립니다!!!

1개의 좋아요