private void OnAuthSuccess()
        {
            CurrentAuth.type = AuthType.Login;

            if (_isRememberMe)
            {
                _isRememberMe = false;

                string customId = Guid.NewGuid().ToString();
                _rememberMeInfo = new RememberMeInfo(true, customId);
                LinkCustomIDRequest linkRequest = new LinkCustomIDRequest()
                {
                    CustomId  = customId,
                    ForceLink = true,
                };
                PlayFabClientAPI.LinkCustomID(linkRequest, OnLinkSuccess, OnAuthFailure);
            }
            GetPlayerProfileRequest profileRequest = new GetPlayerProfileRequest()
            {
                ProfileConstraints = new PlayerProfileViewConstraints()
                {
                    ShowDisplayName = true,
                }
            };

            PlayFabClientAPI.GetPlayerProfile(profileRequest, OnGetProfileSuccess, OnAuthFailure);
        }
Example #2
0
 /// <summary>
 /// Not implemented yet.
 /// </summary>
 public static void LinkDevice(PlayFab.ClientModels.LoginResult result = null)
 {
     #if UNITY_ANDROID
     LinkAndroidDeviceIDRequest request = new LinkAndroidDeviceIDRequest()
     {
         AndroidDeviceId = DBManager.GetDeviceId(),
         ForceLink       = true,
         OS            = SystemInfo.operatingSystem,
         AndroidDevice = SystemInfo.deviceModel,
     };
     PlayFabClientAPI.LinkAndroidDeviceID(request, UnlinkCustomId, OnLinkError);
     #elif UNITY_IOS
     LinkIOSDeviceIDRequest request = new LinkIOSDeviceIDRequest()
     {
         DeviceId    = DBManager.GetDeviceId(),
         ForceLink   = true,
         OS          = SystemInfo.operatingSystem,
         DeviceModel = SystemInfo.deviceModel
     };
     PlayFabClientAPI.LinkIOSDeviceID(request, UnlinkCustomId, OnLinkError);
     #else
     LinkCustomIDRequest request = new LinkCustomIDRequest()
     {
         CustomId  = DBManager.GetDeviceId(),
         ForceLink = true
     };
     PlayFabClientAPI.LinkCustomID(request, UnlinkCustomId, OnLinkError);
     #endif
 }
Example #3
0
    private void LinkCustomID()
    {
        LinkCustomIDRequest request = new LinkCustomIDRequest();

        request.CustomId = SystemInfo.deviceUniqueIdentifier;

        PlayFabClientAPI.LinkCustomID(request, CustomLinked, OnPlayFabError);
    }
Example #4
0
    private void LinkCustomID(string ID)
    {
        var linkRequest = new LinkCustomIDRequest {
            CustomId = ID, ForceLink = true
        };

        PlayFabClientAPI.LinkCustomID(linkRequest, OnLinkSuccess, OnLinkFailure);
    }
    public override void DoFunction()
    {
        var request = new LinkCustomIDRequest
        {
            CustomId = SystemInfo.deviceUniqueIdentifier
        };

        PlayFabClientAPI.LinkCustomID(request, OnSuccess, OnFailure);
    }
Example #6
0
        public void LinkDeviceToAccount(Callback <bool> i_requestCallback)
        {
            StartRequest("Linking device to account");

#if UNITY_EDITOR
            LinkCustomIDRequest request = new LinkCustomIDRequest()
            {
                CustomId  = SystemInfo.deviceUniqueIdentifier,
                ForceLink = true
            };

            PlayFabClientAPI.LinkCustomID(request,
                                          (result) => {
                RequestComplete("LinkDeviceToAccount() compete, success", LogTypes.Info);
                i_requestCallback(true);
            },
                                          (error) => {
                HandleError(error, "LinkDeviceToAccount() complete, error");
                i_requestCallback(false);
            });
#elif UNITY_ANDROID
            LinkAndroidDeviceIDRequest request = new LinkAndroidDeviceIDRequest()
            {
                AndroidDeviceId = SystemInfo.deviceUniqueIdentifier,
                ForceLink       = true
            };

            PlayFabClientAPI.LinkAndroidDeviceID(request,
                                                 (result) => {
                RequestComplete("LinkDeviceToAccount() compete, success", LogTypes.Info);
                i_requestCallback(true);
            },
                                                 (error) => {
                HandleError(error, "LinkDeviceToAccount() complete, error");
                i_requestCallback(false);
            });
#elif UNITY_IOS
            LinkIOSDeviceIDRequest request = new LinkIOSDeviceIDRequest()
            {
                DeviceId  = SystemInfo.deviceUniqueIdentifier,
                ForceLink = true
            };

            PlayFabClientAPI.LinkIOSDeviceID(request,
                                             (result) => {
                RequestComplete("LinkDeviceToAccount() compete, success", LogTypes.Info);
                i_requestCallback(true);
            },
                                             (error) => {
                HandleError(error, "LinkDeviceToAccount() complete, error");
                i_requestCallback(false);
            });
#endif
        }
Example #7
0
        /// <summary>
        /// Not implemented yet.
        /// </summary>
        public static void LinkAccountOther()
        {
            ExecuteCloudScriptRequest cloudRequest = new ExecuteCloudScriptRequest()
            {
                FunctionName            = "generateLink",
                GeneratePlayStreamEvent = true
            };

            PlayFabClientAPI.ExecuteCloudScript(cloudRequest, (cloudResult) =>
            {
                JSONNode node  = JSON.Parse(PlayFab.Json.JsonWrapper.SerializeObject(cloudResult.FunctionResult));
                linkSecretKey  = node["secretKey"].Value;
                linkExpiredKey = node["expired"].Value;

                LinkCustomIDRequest linkRequest = new LinkCustomIDRequest()
                {
                    CustomId  = userId + linkSecretKey,
                    ForceLink = false
                };

                if (string.IsNullOrEmpty(linkExpiredKey))
                {
                    Debug.Log("Linking new CustomID...");
                    PlayFabClientAPI.LinkCustomID(linkRequest, OnLinkSuccess, OnLinkError);
                    return;
                }

                Debug.Log("Should first unlink this expired key: " + linkExpiredKey);
                UnlinkCustomIDRequest unlinkRequest = new UnlinkCustomIDRequest()
                {
                    CustomId = userId + linkExpiredKey
                };

                PlayFabClientAPI.UnlinkCustomID(unlinkRequest, (unlinkResult) =>
                {
                    Debug.Log("Device ID unlinked");
                    linkExpiredKey = null;
                    PlayFabClientAPI.LinkCustomID(linkRequest, OnLinkSuccess, OnLinkError);
                }, (unlinkError) =>
                {
                    if (unlinkError.Error == PlayFabErrorCode.CustomIdNotLinked)
                    {
                        Debug.Log("The previous device ID was claimed and unlinked already, skipping.");
                        linkExpiredKey = null;
                        PlayFabClientAPI.LinkCustomID(linkRequest, OnLinkSuccess, OnLinkError);
                    }
                    else
                    {
                        OnLinkError(unlinkError);
                    }
                });
            }, OnLinkError);
        }
Example #8
0
        //Link an existing playfab user to a custom id
        //You must be logged in to do this
        private static void ConnectFabUserToCustomID(string fabID2, string customID)
        {
            var request = new LinkCustomIDRequest
            {
                CustomId = customID
            };
            var result = PlayFabClientAPI.LinkCustomIDAsync(request).GetAwaiter().GetResult();

            if (result.Error != null)
            {
                Console.WriteLine(result.Error.ErrorMessage);
            }
        }
Example #9
0
        public void LinkGoogle(string id, Action <bool> ResultCallback)
        {
            LinkCustomIDRequest request = new LinkCustomIDRequest();

            request.CustomId  = id;
            request.ForceLink = false;

            PlayFabClientAPI.LinkCustomID(request, (result) =>
            {
                SaveLoginPathway(LoginType.Google);

                SetSocialPlayformID(id);

                ResultCallback(true);
            },
                                          (error) =>
            {
                ResultCallback(false);
            });
        }
Example #10
0
    private void OnTransferSuccess(LoginResult result)
    {
        Debug.Log("Transfer account successful.");

        string newCustomId = PlayerPrefsManager.GetRandomCustomId();

        PlayerPrefsManager.SetPlayerCustomId(newCustomId);

        #if UNITY_EDITOR
        LinkCustomIDRequest request = new LinkCustomIDRequest();
        request.CustomId  = newCustomId;
        request.ForceLink = true;

        PlayFabClientAPI.LinkCustomID(request, OnCustomIdTransferLinkSuccess, OnTransferLinkError);
        #elif UNITY_IOS
        LinkIOSDeviceIDRequest request = new LinkIOSDeviceIDRequest();
        request.DeviceId    = newCustomId;
        request.OS          = SystemInfo.operatingSystem;
        request.DeviceModel = SystemInfo.deviceModel;
        request.ForceLink   = true;

        PlayFabClientAPI.LinkIOSDeviceID(request, OnIOSDeviceTransferLinkSuccess, OnTransferLinkError);
        #endif
    }