๐ŸŽ Apple/iOS

[iOS] ํŒŒ์ด์–ด๋ฒ ์ด์Šค ๊ตฌ๊ธ€ ๋กœ๊ทธ์•„์›ƒ/ํšŒ์›ํƒˆํ‡ด | Swift | Firebase Google Login

JINiOS 2024. 1. 13. 19:09
728x90

ํŒŒ์ด์–ด๋ฒ ์ด์Šค๋กœ ๊ตฌ๊ธ€ ๋กœ๊ทธ์•„์›ƒ/ํšŒ์›ํƒˆํ‡ด ๋•Œ ์œ ์˜ํ•  ์ ์„ ์•Œ์•„๋ณด์ž.

 

๋กœ๊ทธ์ธ์˜ ๊ฒฝ์šฐ๋Š” ๋‹ค๋ฅธ ๋ธ”๋กœ๊ทธ์—๋„ ์ž˜ ๋‚˜์™€์žˆ๊ณ , ๊ณต์‹ ์‚ฌ์ดํŠธ๋„ ์ž˜๋˜์–ด์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ƒ๋žตํ•œ๋‹ค-!!

 


 

์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•ด์„œ ํ™œ์šฉํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค !

ํ•ด๋‹น ์ฝ”๋“œ๋Š” ํŒŒ์ด์–ด๋ฒ ์ด์Šค๋ฅผ ํ™œ์šฉํ•ด์„œ ๊ตฌ๊ธ€/์นด์นด์˜ค/์• ํ”Œ ๋กœ๊ทธ์ธ์„ ๊ตฌํ˜„ํ–ˆ๋˜ ์˜ˆ์ œ์ธ๋ฐ, ๊ตฌ๊ธ€์—์„œ ์“ฐ์ด๋Š” ์ฝ”๋“œ๋งŒ ๋‚จ๊ฒจ๋‘์—ˆ๋‹ค..!

  import FirebaseAuth
  import GoogleSignIn
  
  final class AuthenticationManager {
      /// ๋กœ์ปฌ Firebase์— ์ €์žฅ๋œ ์œ ์ € ์ •๋ณด๋ฅผ ์‚ญ์ œํ•˜๊ณ  ๋กœ๊ทธ์•„์›ƒ
      func signOut() throws {
            try Auth.auth().signOut()
            GIDSignIn.sharedInstance.signOut()
      }

      /// disconnect ๋ฉ”์„œ๋“œ๋กœ ๊ณ„์ •์„ ์—ฐ๊ฒฐ ํ•ด์ œํ•˜๊ณ  ํ† ํฐ์„ ์ทจ์†Œ, ์‚ฌ์šฉ์ž๋ฅผ ๋กœ๊ทธ์•„์›ƒ 
      /// ์ดํ›„ ์ƒ๋‹จ์˜ signOut()๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ๋กœ์ปฌ Firebase์— ์ €์žฅ๋œ ์œ ์ € ์ •๋ณด๋ฅผ ์‚ญ์ œํ•˜๊ณ  ๋กœ๊ทธ์•„์›ƒ
      func delete() async throws {
            guard let user = Auth.auth().currentUser else {
            	throw AuthErrorCode(.userNotFound)
            }
            GIDSignIn.sharedInstance.disconnect()
            try signOut()
            try await user.delete()
      }
  }

 

 

๐Ÿšจ ์ฃผ์˜ํ•  ์ ์ด ์žˆ๋Š”๋ฐ์š” ๐Ÿšจ

GIDSignIn.sharedInstance.disconnect()

 

์ด ๋ฉ”์„œ๋“œ๋กœ ๊ณ„์ •์„ ๊ตฌ๊ธ€๊ณผ ์—ฐ๊ฒฐ ํ•ด์ œํ•˜๊ณ  ํ† ํฐ์„ ์ทจ์†Œํ•˜๊ณ , ์‚ฌ์šฉ์ž๋ฅผ ๋กœ๊ทธ์•„์›ƒ์‹œํ‚จ๋‹ค๊ณ  ํ•œ๋‹ค.

 

๋˜ํ•œ disconnect()๋ฅผ ํ˜ธ์ถœํ•˜๊ธฐ ์ „์— ์‚ฌ์šฉ์ž๋ฅผ ๋กœ๊ทธ์•„์›ƒ์‹œํ‚ค๋ฉด ์•ˆ ๋œ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ,

์ด๋Š” ํšŒ์›ํƒˆํ‡ดํ•  ๊ฒฝ์šฐ, ๊ผญ ์•„๋ž˜ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰ํ•ด์•ผํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

1. GIDSignIn.sharedInstance.disconnect()

2. GIDSignIn.sharedInstance.signOut()

 

๋ฐ˜๋Œ€๋กœ ํ•  ๊ฒฝ์šฐ ๊ตฌ๊ธ€ ๊ณ„์ •์— ์„œ๋น„์Šค๊ฐ€ ์—ฐ๊ฒฐ๋œ ์ฑ„๋กœ ๋‚จ์•„์žˆ๊ฒŒ ๋œ๋‹ค...๐Ÿซฅ


 

๐Ÿ”— ํƒˆํ‡ด, ์—ฐ๊ฒฐํ•ด์ œ๊ฐ€ ์ž˜ ๋˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š” ๐Ÿ”—

์•„๋ž˜ ์ˆœ์„œ๋Œ€๋กœ ์ด๋™ํ•ด๋ณด๋ฉด

 

1. ๊ตฌ๊ธ€ ์‚ฌ์ดํŠธ > ๊ตฌ๊ธ€ ๊ณ„์ • ๊ด€๋ฆฌ > ๋ณด์•ˆ

2. ํ•˜๋‹จ์˜ ์„œ๋“œ ํŒŒํ‹ฐ ์•ฑ ๋ฐ ์„œ๋น„์Šค ์—ฐ๊ฒฐ > ๋ชจ๋“  ์—ฐ๊ฒฐ ๋ณด๊ธฐ

 

ํ•ด๋‹น ํ™”๋ฉด์—์„œ ๊ตฌ๊ธ€ ๊ณ„์ •์œผ๋กœ ๋กœ๊ทธ์ธํ•œ ๋‚ด์—ญ๋“ค์„ ๋ณผ ์ˆ˜ ์žˆ๋Š”๋ฐ, 

ํšŒ์› ํƒˆํ‡ด๋ฅผ ์‹คํ–‰ํ–ˆ์„ ๋•Œ ์„œ๋น„์Šค๊ฐ€ ์ž˜ ์—†์–ด์ง€๋Š” ์ง€ ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค !-!

 

 

 


 

๊ณต์‹๋ฌธ์„œ๋ฅผ ํ™•์ธํ•ด์„œ ํ•„์š”ํ•œ ๋ถ€๋ถ„์„ ๋” ์ฐธ๊ณ ํ•ด๋ณด์„ธ์š” ๐Ÿ™‡๐Ÿป‍โ™€๏ธ

์‚ฌ์‹ค๊ณผ ๋‹ค๋ฅธ ๋ถ€๋ถ„์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€๋กœ ์•Œ๋ ค์ฃผ์„ธ์š” ๐Ÿ’ฌ

 

 

iOS ์•ฑ์— Google ๋กœ๊ทธ์ธ ์ถ”๊ฐ€

https://developers.google.com/identity/sign-in/ios/sign-in?hl=ko

 

iOS ์•ฑ์— Google ๋กœ๊ทธ์ธ ์ถ”๊ฐ€ - Firebase ์ธ์ฆ

https://firebase.google.com/docs/auth/ios/google-signin?hl=ko

 

์•ฑ ์—ฐ๊ฒฐ ํ•ด์ œ ๊ด€๋ จ

https://developers.google.com/identity/sign-in/ios/disconnect?hl=ko

 

728x90