Flutter 카카오 로그인 ios await 이후 return 안되는 이슈

flutter sdk 1.0.0 버전 이용중입니다.

안드로이드는 잘 되는데 iOS 쪽 이슈입니다.

final token = await UserApi.instance.loginWithKakaoTalk(); 이후 카카오톡으로 이동은 되는데
동의 후 돌아오면 로그에 아무런 표시가 뜨지 않습니다.
이후 print(token); 도 있는데 token값도 프린트되지 않고

try catch 구문 안에 있음에도 불구하고 아무런 오류조차 뜨지 않습니다.

try {
                bool talkInstalled = await isKakaoTalkInstalled();

                if (talkInstalled) {
                  final token = await UserApi.instance.loginWithKakaoTalk();

                  print(token);

                  // await controller.signWithKakao(token.accessToken);

                } else {
                  Get.snackbar('카카오톡이 설치되어있지 않습니다', Atom.RETRY_SUB);
                }
              } catch (e) {
                print('카카오톡으로 로그인 실패 $e');

                // 사용자가 카카오톡 설치 후 디바이스 권한 요청 화면에서 로그인을 취소한 경우,
                // 의도적인 로그인 취소로 보고 카카오계정으로 로그인 시도 없이 로그인 취소로 처리 (예: 뒤로 가기)
                if (e is PlatformException && e.code == 'CANCELED') {
                  return print('로그인 취소');
                }
              }

전체 코드 입니다.

안녕하세요

혹시 관련 설정들은 다 되어있나요?

네 해당 설정들은 모두 되어있습니다.

혹시 앱id가 어떻게 되나요?

추가로 info.plist 설정도 첨부 부탁드립니다. (앱 키 부분은 가려서 올려주세요)

그리고 가능하시다면 이슈 재현 영상도 올려주시면 조금 더 도움될 것 같습니다

<key>CFBundleURLTypes</key>
<array>
	<dict>
		<key>CFBundleTypeRole</key>
		<string>Editor</string>
		<key>CFBundleURLSchemes</key>
		<array>
			<string>kakao${app key 가렸습니다}</string>
		</array>
	</dict>
</array>
<key>KAKAO_APP_KEY</key>
<string>${앱키}</string>
<key>LSApplicationQueriesSchemes</key>
<array>
	<string>kakao${앱키}</string>
	<string>kakaokompassauth</string>
	<string>kakaolink</string>
</array>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSAppTransportSecurity</key>
<dict>
	<key>NSAllowsArbitraryLoads</key>
	<true/>
	<key>NSAllowsArbitraryLoadsInWebContent</key>
	<true/>
</dict>

앱 id는 ID 677534 입니다.

카카오 관련된 부분만 올렸습니다!

혹시 사용하는 flutter 버전은 어떻게 되시나요?

설정에도 문제가 없어보이고 이슈가 재현되지 않아서 정확한 원인을 파악하지 못했네요ㅠㅠ

가능하시다면 이슈 재현 동영상 첨부도 부탁드립니다

아 그런가요…
flutter version은 2.5.3 입니다
재현 동영상은 나중에 올려드리겠습니다.

RPReplay_Final1646916007-1.mov.zip (3.2 MB)

시연 영상입니다.

저렇게 다시 돌아만 오고 로그 상으로는 아무런 값이 뜨지 않습니다.

정확히 원인을 파악하지 못해서 답변이 늦었습니다ㅠㅠ

서버 로그를 확인해봤을 때 한가지 이상한 점이 발견 됐는데요, 일반적으로 OAuth 2.0 방식의 로그인은 인증 코드를 발급받고, 발급받은 코드를 사용해 토큰을 발급받는 과정으로 동작합니다.

그런데 서버 로그를 보니 인증 코드를 발급받은 후 토큰 발급 요청을 하지 않고 있네요. 아직 확실한 원인은 찾지 못했지만 해당 부분에서 문제가 있는 것 같습니다.

개인 메시지로 저에게 앱 키까지 포함되어있는 info.plist 원본을 첨부해서 보내주시면 감사하겠습니다.

네이버로그인에서 카카오 로그인 url을 처리해서 이슈 발생하는 것 확인

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

AppDelegate.swift 파일을 아래와 같이 수정해서 해결

override func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
    var result = false

   if url.absoluteString.hasPrefix("kakao") {
       result = super.application(app, open: url, options: options)
   }

   if !result {
       result = NaverThirdPartyLoginConnection.getSharedInstance()?.application(app, open: url, options: options)
   }
   return result
}