-
Notifications
You must be signed in to change notification settings - Fork 119
Description
문제 설명
안녕하세요. 최신 버전의 flutter_naver_login:2.1.1 플러그인을 사용하여 iOS 네이버 로그인을 구현하는 중입니다.
이슈 #134 에서 유사한 문제가 해결된 것을 확인했지만, 여전히 기본 설정으로 빌드 시 네이티브 네이버 앱이 아닌 웹뷰(SFSafariViewController)가 호출됩니다.
Xcode 빌드 로그를 확인하면 다수의 'Duplicate Symbols' 경고가 출력되며, 이는 라이브러리 심볼이 중복으로 링크되어 발생하는 문제로 보입니다.
Class _TtC18NidThirdPartyLogin18SDKRootDIContainer is implemented in both /path/to/NidThirdPartyLogin.framework/NidThirdPartyLogin and /path/to/Runner.app/Runner. One of the duplicates must be removed...
임시 해결책
ios/Podfile의 target 'Runner' do 블록 내부에 있는 use_frameworks! 라인을 아래와 같이 수정했습니다.
- 변경 전:
use_frameworks! - 변경 후:
use_frameworks! :linkage => :static
이와 같이 정적 링킹(Static Linking)으로 강제하자, 'Duplicate Symbols' 경고가 사라졌고 네이티브 네이버 앱이 정상적으로 호출되었습니다.
후속 문제: 'Login cancelled by user' 에러 발생
위와 같은 수정으로 네이티브 앱은 정상적으로 호출되었지만, 새로운 문제가 발생했습니다.
네이버 앱에서 인증을 성공적으로 마치고 다시 제 앱으로 복귀했을 때, 로그인 결과가 status: NaverLoginStatus.error와 errorMessage: 'Login cancelled by user'로 반환됩니다. 사용자는 인증 과정 중 어떠한 '취소' 버튼도 누르지 않았습니다.
현재 이 문제로 인해 최종적으로 로그인을 완료할 수 없는 상태입니다.