강의

멘토링

커뮤니티

Inflearn コミュニティ Q&A

chrispark のプロフィール画像
chrispark

投稿した質問数

Unityシステムプログラミング Pt.2 - 商用ゲーム実装のための核心システムオールインワンパッケージ

파이어베이스 관련 질문입니다.

解決済みの質問

作成

·

77

0

안녕하세요. 강의 잘 듣고 있습니다.

 

파이어베이스 로그인 기능중에 구글과 애플 로그인을 구현해주셨었는데요.

파이어베이스에 익명 로그인 기능도 있더라구요.

게임 시작은 익명 로그인을 시킨 후 게임 중간에 구글이나 애플 로그인을 통해 전환하는 방법도 궁금합니다.

전환시키는 코드도 궁금하지만 전환 시킬 경우 익명 로그인 했던 ID 는 그대로 남고 새로운 구글, 애플 로그인 ID가 생성되는 방식인지 아닌지도 궁금합니다.

 

이상입니다. 감사합니다.

C#unity객체지향

回答 2

0

burningcarrot님의 프로필 이미지
burningcarrot
インストラクター

안녕하세요! BurningCarrot입니다.

웬일로 인프런 AI 인턴이 정확한 답변을 해줬네요.👀

제가 따로 답변을 드릴 필요는 없을 것 같습니다. 아래 내용 참고하시면 되겠습니다.

감사합니다.

chrispark님의 프로필 이미지
chrispark
質問者

저도 깜놀했습니다~ 추후에 구현할때 이거 참고할 용도로 스크랩 해놨습니다~ ㅎ

0

안녕하세요, 인프런 AI 인턴입니다. 크리스팍님.

파이어베이스의 로그인 기능 중 익명 로그인을 활용하여 게임 시작 시 자동으로 로그인을 처리하고, 이후 구글이나 애플 계정으로 전환하는 방법에 대해 궁금하실 수 있습니다.

익명 로그인 및 계정 전환

  1. 익명 로그인:

    • 익명 로그인을 사용하면 사용자는 게임 시작 시 별도의 로그인 정보 없이 즉시 익명 ID로 Firebase에 저장됩니다. 이는 사용자가 계정을 생성하지 않더라도, 일시적으로 데이터를 연동하거나 게임을 시작할 수 있는 장점이 있습니다.
  2. 구글/애플 계정으로 전환:

    • 익명 계정 상태에서 구글/애플 계정으로 전환을 시도할 경우, 해당 사용자에게 새로운 계정이 연결됩니다. 익명 ID가 구글/애플 로그인의 ID로 대체됩니다.
    • Firebase Authentication에서는 linkWithCredential 메소드를 사용하여 익명 계정을 구글 또는 애플 계정으로 전환할 수 있습니다. 원래 익명 계정이 사용했던 ID 데이터는 그대로 남아있고, 구글/애플 로그인을 통해 해당 ID가 연결되므로, 데이터 유실 없이 전환이 가능합니다.
  3. 코드 예시:

    • 아래는 익명에서 구글 계정으로 전환하는 간단한 예시 코드입니다:
   FirebaseAuth auth = FirebaseAuth.DefaultInstance;
   
   // 익명 로그인
   auth.SignInAnonymouslyAsync().ContinueWith(task => {
     if (task.IsCanceled) return;
     if (task.IsFaulted) return;
     
     // 구글 계정으로 전환
     FirebaseUser newUser = task.Result; // 익명 계정
     Credential credential = GoogleAuthProvider.GetCredential("google_id_token", null); // 예시

     newUser.LinkWithCredentialAsync(credential).ContinueWith(tk => {
       if (tk.IsCanceled) return;
       if (tk.IsFaulted) return;
       // 전환 완료
       FirebaseUser currentUser = tk.Result;
     });
   });

이 코드는 익명 계정으로 시작한 후, 구글 계정으로 안전하게 전환하는 예시를 보여줍니다.

위 설명을 통해 도움이 되셨길 바랍니다. 추가적인 구체적인 코드나 구현 방법이 궁금하시다면, 관련된 파이어베이스 문서를 참고하시거나 이어서 질문해주시면 도움이 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

chrispark のプロフィール画像
chrispark

投稿した質問数

質問する