public void OnSuccess(Java.Lang.Object result)
            {
                LoginResult loginResult = (LoginResult)result;

                Log.Debug("IFacebookCallback", "Facebook login successfuly. Access token: " + loginResult.AccessToken.Token);
                IAGConnectAuthCredential credential = FacebookAuthProvider.CredentialWithToken(loginResult.AccessToken.Token);

                loginActivity.SignIn(credential);
            }
            public void OnSuccess(Java.Lang.Object signInAccount)
            {
                GoogleSignInAccount googleSignInAccount = (GoogleSignInAccount)signInAccount;
                string authCode = googleSignInAccount.ServerAuthCode;

                Log.Debug("GooglePlaySignInListener", "Successfuly. Auth code: " + authCode);
                IAGConnectAuthCredential credential = GoogleGameAuthProvider.CredentialWithToken(authCode);

                loginActivity.SignIn(credential);
            }
            public void OnSuccess(Java.Lang.Object signInAccount)
            {
                GoogleSignInAccount googleSignInAccount = (GoogleSignInAccount)signInAccount;
                string idToken = googleSignInAccount.IdToken;

                Log.Debug("GoogleSignInlistener", "Successfuly. Access token: " + idToken);
                IAGConnectAuthCredential credential = GoogleAuthProvider.CredentialWithToken(idToken);

                loginActivity.SignIn(credential);
            }
 private void Auth_Completed(object sender, AuthenticatorCompletedEventArgs e)
 {
     if (e.IsAuthenticated)
     {
         string  defaultToken  = "";
         string  defaultSecret = "";
         Account account       = e.Account;
         if (account.Properties.TryGetValue("oauth_token", out defaultToken) && account.Properties.TryGetValue("oauth_token_secret", out defaultSecret))
         {
             Log.Info(TAG, "Twitter login success. Accesstoken: " + defaultToken);
             IAGConnectAuthCredential twitterCredential = TwitterAuthProvider.CredentialWithToken(defaultToken, defaultSecret);
             SignIn(twitterCredential);
         }
         else
         {
             Log.Error(TAG, "Cannot find value of oauth_token or oauth_token_secret");
         }
     }
 }
 protected override void OnActivityResult(int requestCode, [GeneratedEnum] Result resultCode, Intent data)
 {
     base.OnActivityResult(requestCode, resultCode, data);
     if (requestCode == SignCode)
     {
         try
         {
             Task authAccountTask = AccountAuthManager.ParseAuthResultFromIntent(data);
             if (authAccountTask.IsSuccessful)
             {
                 AuthAccount authAccount = (AuthAccount)authAccountTask.Result;
                 Log.Info(TAG, "Huawei ID login success. Access token: " + authAccount.AccessToken);
                 // Create Huawei Id credential
                 IAGConnectAuthCredential credential = HwIdAuthProvider.CredentialWithToken(authAccount.AccessToken);
                 // sign In
                 SignIn(credential);
             }
         }
         catch (Java.Lang.Exception ex)
         {
             Log.Error(TAG, "Failed: " + ex.Message);
         }
     }
     else if (requestCode == 64206)
     {
         callBackManager.OnActivityResult(requestCode, (int)resultCode, data);
     }
     else if (requestCode == 9001)
     {
         Android.Gms.Tasks.Task task = GoogleSignIn.GetSignedInAccountFromIntent(data);
         task.AddOnSuccessListener(new GoogleSignInListener(this));
         task.AddOnFailureListener(new GoogleSignInListener(this));
     }
     else if (requestCode == 9003)
     {
         Android.Gms.Tasks.Task task = GoogleSignIn.GetSignedInAccountFromIntent(data);
         task.AddOnSuccessListener(new GooglePlaySignInListener(this));
         task.AddOnFailureListener(new GooglePlaySignInListener(this));
     }
 }
        private async void SignIn(IAGConnectAuthCredential credential)
        {
            try
            {
                AGConnectAuth connectAuth  = AGConnectAuth.Instance;
                var           signInResult = AGConnectAuth.Instance.SignInAsync(credential);

                ISignInResult result = await signInResult;

                if (signInResult.Status.Equals(System.Threading.Tasks.TaskStatus.RanToCompletion))
                {
                    Log.Debug(TAG, signInResult.Result.ToString());
                    StartActivity(new Intent(this, typeof(MainActivity)));
                    Finish();
                }
            }
            catch (Exception ex)
            {
                Log.Error(TAG, ex.Message);
                Toast.MakeText(this, "SignIn failed: " + ex.Message, ToastLength.Long).Show();
            }
        }