iOS/Setting
Naver Login
Hamp
2025. 6. 30. 22:43
반응형

🏁 학습할 내용
- 세팅
- 패키지 설치
- info.plist
- URL Scheme 등록
- 코드
- 초기화
- 로그인
⚙️ 세팅
📦 패키지 설치
https://github.com/naver/naveridlogin-sdk-ios-swift
📋 Info.plist
각 키값과 value값을 info.plist에 넣어준다.

<key>NidAppName</key>
<string>{애플리케이션 이름}</string>
<key>NidClientID</key>
<string>{클라이언트 아이디}</string>
<key>NidClientSecret</key>
<string>{클라이언트 시크릿}</string>
<key>NidUrlScheme</key>
<string>{콜백 URL Scheme}</string>
⚠️ 참고
콜백 URL Scheme은 서비스 앱에서 유니크한 값을 사용해야합니다. 위 값이 사용자 기기에 설치된 다른 앱과 중복될 경우, 해당 기능이 비정상적으로 동작할 수 있습니다.이를 방지하려면 단순한 값보다는 앱 이름, bundle identifier 등 고유 정보를 포함한 형식의 URL Scheme을 사용하는 것이 좋습니다.
📝 URL Scheme 등록
로그인 이후 복귀를 위한 URL Scheme을 Target의 Info - URL Types에 등록해준다.
Identifer는 고유한 값을 , URL Schemes에는 위 .plist에 넣었던 콜백 URL Shceme을 똑같이 넣어준다.

이후, 우리 서비스에서 네이버 앱을 실행할 수 있도록, LSApplicationQueriesSchemes를 info.plist에 추가해준다.
<key>LSApplicationQueriesSchemes</key>
<array>
<string>naversearchapp</string>
<string>naversearchthirdlogin</string>
</array>
⌨️ 코드
🏃 초기화
@main
struct PoolApp: App {
@UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
init() {
initNaverLoginInstance()
}
...
private func initNaverLoginInstance() {
NidOAuth.shared.initialize()
/// 네이버 앱이 설치된 경우 네이버 앱으로 인증, 네이버 앱이 설치되어있지 않은 경우 SafariViewController를 실행해 인증
NidOAuth.shared.setLoginBehavior(.appPreferredWithInAppBrowserFallback)
}
}
🧤 핸들링
.onOpenURL { url in
if NidOAuth.shared.handleURL(url) == true { // 네이버 로그인 핸들링
}
}
🔑 로그인
private func loginWithNaver() {
NidOAuth.shared.requestLogin { result in
switch result {
case let .success(response):
print(response)
break
case let .failure(error):
break
}
}
}
🔒 로그아웃
func logoutWithNaver() {
NidOAuth.shared.logout()
}
✂ 연결 끊기
private func disconnectWithNaver() {
NidOAuth.shared.disconnect { result in
}
}
출처
https://developers.naver.com/docs/login/ios/ios.md
iOS - LOGIN
iOS 위 문서는 네이버 아이디로 로그인 iOS SDK의 최신 버전에 대한 가이드를 제공합니다. 네이버 아이디로 로그인 iOS SDK는 서드파티 애플리케이션에서 네이버에서 제공하는 로그인, 로그아웃, 토
developers.naver.com
반응형