[이미지는 정보 보호를 위해 삭제하였습니다.]
구글아이디로만 로그인 되게 했는데
출시했더니 이렇게 됐어요
유저 아이디 없이 로그인이 됐는데
가입유형은 google 이라되어있어요
왜 그런거죠
저거 이메일 보이게는 못하는건가요
[이미지는 정보 보호를 위해 삭제하였습니다.]
구글아이디로만 로그인 되게 했는데
출시했더니 이렇게 됐어요
유저 아이디 없이 로그인이 됐는데
가입유형은 google 이라되어있어요
왜 그런거죠
저거 이메일 보이게는 못하는건가요
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
// 뒤끝 SDK namespace 추가
using BackEnd;
public class BackendLogin
{
private static BackendLogin _instance = null;
public static BackendLogin Instance
{
get
{
if (_instance == null)
{
_instance = new BackendLogin();
}
return _instance;
}
}
public void CustomSignUp(string id, string pw)
{
Debug.Log("회원가입을 요청합니다.");
var bro = Backend.BMember.CustomSignUp(id, pw);
if (bro.IsSuccess())
{
Debug.Log("회원가입에 성공했습니다. : " + bro);
}
else
{
Debug.LogError("회원가입에 실패했습니다. : " + bro);
}
}
public void CustomLogin(string id, string pw)
{
Debug.Log("로그인을 요청합니다.");
var bro = Backend.BMember.CustomLogin(id, pw);
if (bro.IsSuccess())
{
Debug.Log("로그인이 성공했습니다. : " + bro);
}
else
{
Debug.LogError("로그인이 실패했습니다. : " + bro);
Debug.LogError(bro.GetStatusCode() == "403");
/* if(bro.GetStatusCode() == "403")
{
BackendManager.Instance. hackBanPanel.SetActive(true);
}*/
}
}
public void UpdateNickname(string nickname)
{
Debug.Log("닉네임 변경을 요청합니다.");
var bro = Backend.BMember.UpdateNickname(nickname);
if (bro.IsSuccess())
{
Debug.Log("닉네임 변경에 성공했습니다 : " + bro);
NotificationPanel.Instance.Notify();
NotificationPanel.Instance.text.text = "닉네임 변경에 성공했습니다";
NameChecker.Instance.nicknamePanel.SetActive(false);
var bro2 = Backend.BMember.GetUserInfo();
var userInfo = bro2.GetReturnValuetoJSON()["row"];
PlayerController.Instance.playerStatSystem.nickname = userInfo["nickname"].ToString();
Debug.Log(userInfo);
Debug.Log(userInfo["nickname"].ToString());
}
else
{
// 뒤끝 서버에서 반환한 메시지가 닉네임이 중복됐다는 것을 나타내는지 확인
if (bro.GetStatusCode() == "410")
{
Debug.LogError("닉네임이 중복됩니다 : " + bro);
NotificationPanel.Instance.Notify();
NotificationPanel.Instance.text.text = "닉네임이 중복됩니다";
}
else if (bro.GetStatusCode() == "409")
{
Debug.LogError("닉네임이 중복됩니다 : " + bro);
NotificationPanel.Instance.Notify();
NotificationPanel.Instance.text.text = "닉네임이 중복됩니다";
}
else
{
Debug.LogError("닉네임 변경에 실패했습니다 : " + bro);
NotificationPanel.Instance.Notify();
NotificationPanel.Instance.text.text = "닉네임 변경에 실패했습니다";
}
}
}
// 사용자 정보를 조회하고 닉네임이 설정되었는지 확인하는 함수
public void CheckUserNicknameSet()
{
Debug.Log("닉네임 CheckUserNicknameSet");
var bb = Backend.BMember.GetUserInfo();
// 현재 로그인한 사용자의 정보를 조회
if (bb.IsSuccess())
{
Debug.Log("닉네임 IsSuccess");
// 사용자 정보 조회에 성공했을 경우
var userInfo = bb.GetReturnValuetoJSON()["row"];
// 닉네임 필드가 존재하는지 확인
if (userInfo["nickname"] != null && !string.IsNullOrEmpty(userInfo["nickname"].ToString()))
{
// 닉네임이 설정되어 있음
Debug.Log("사용자 닉네임: " + userInfo["nickname"]);
// UI 컴포넌트 null 체크 후 안전하게 접근
if (NameChecker.Instance != null && NameChecker.Instance.nicknamePanel != null)
{
NameChecker.Instance.nicknamePanel.SetActive(false);
}
// PlayerController null 체크 후 안전하게 접근
if (PlayerController.Instance != null && PlayerController.Instance.playerStatSystem != null)
{
PlayerController.Instance.playerStatSystem.nickname = userInfo["nickname"].ToString();
}
}
else
{
// 닉네임이 설정되어 있지 않음
Debug.Log("닉네임이 설정되어 있지 않습니다.");
// UI 컴포넌트 null 체크 후 안전하게 접근
if (NameChecker.Instance != null && NameChecker.Instance.nicknamePanel != null)
{
NameChecker.Instance.nicknamePanel.SetActive(true);
}
else
{
Debug.Log("NameChecker.Instance != null" + NameChecker.Instance != null);
Debug.Log("NameChecker.Instance.nicknamePanel != null" + NameChecker.Instance.nicknamePanel != null);
}
}
}
else
{
// 사용자 정보 조회 실패
Debug.LogError("사용자 정보 조회에 실패했습니다. 에러: " + bb.GetErrorCode());
}
}
public void StartGoogleLogin()
{
#if UNITY_ANDROID
TheBackend.ToolKit.GoogleLogin.Android.GoogleLogin(GoogleLoginCallback);
#elif UNITY_IOS
TheBackend.ToolKit.GoogleLogin.iOS.GoogleLogin(GoogleLoginCallback);
#endif
}
private void GoogleLoginCallback(bool isSuccess, string errorMessage, string token)
{
if (isSuccess == false)
{
Debug.LogError(errorMessage);
NotificationPanel.Instance.Notify("구글로그인 실패");
return;
}
Debug.Log("구글 토큰 : " + token);
var bro = Backend.BMember.AuthorizeFederation(token, FederationType.Google);
// NotificationPanel.Instance.Notify("페데레이션 로그인 결과 : " + bro);
Debug.Log("페데레이션 로그인 결과 : " + bro);
if (bro.IsSuccess())
{
Debug.Log("구글 로그인에 성공했습니다");
var bro2 = Backend.BMember.RefreshTheBackendToken();
if (!DataManager.Instance.data.isGuestLogin)
{
BackendManager.Instance.DelayedGetInfo(bro2);
NotificationPanel.Instance.Notify("구글로그인에 성공했습니다");
}
else
{
BackendManager.Instance.FromGuestLoginToGoogleLogin2Invoke(1f);
}
}
else
{
NotificationPanel.Instance.Notify("구글로그인 실패");
Debug.Log("구글로그인 실패" + bro.ErrorCode);
Debug.Log("구글로그인 실패" + bro.ErrorMessage);
Debug.Log("구글로그인 실패" + bro.IsBadAccessTokenError());
}
}
}
이런 코드를 쓰고 있습니다.
저렇게 되는거 왜 저런건지 모르겠어요.
어떻게 하면 다 이메일 수집하게 하나요
안녕하세요 개발자님,
이메일 정보는 유저의 정보 비공개 처리에 따라 수집이 이루어지지 않을 수 있으며,
권한 요구를 통해 이메일 정보를 확인할 수 있습니다.
아래 개발자 문서를 확인하여 적용해 주시기 바랍니다.
추가 정정안내 드립니다.
현재 사용하고 계신 로그인은 구글 로그인으로 확인됩니다.
위 가입과정의 이메일 수집은 GPGS V1 로그인에 적용되며,
구글로그인 SDK 를 사용하는 경우 자동으로 수집됩니다.
수집이 이루어지지 않은 유저는 정보공개가 이루어지지 않아 수집되지 않는 것이니 참고하여 이용해 주시면 감사하겠습니다.