我正在尝试开发一款游戏,其中sign in
中Play Games
之后的用户被转发到另一个Activity
。但是在第二个Activity
上,我不知道如何获得他的username
。我是否必须再次Sign in
(这次是第二个Activity
)来获取它?
我尝试过
GoogleSignIn.getClient(this, GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN).toString();
但是它返回类似
com.google.candroid.gms.auth.api.signin@
的内容,而我想要的是他在Play games
中的用户名,而不是这个。我正在阅读此solution,但是在这里我必须再次创建一个
new GoogleApiClient
来获取它。 最佳答案
使用GoogleSignIn.getLastSignedInAccount
方法来请求当前登录用户的配置文件信息。
GoogleSignInAccount acct = GoogleSignIn.getLastSignedInAccount(getActivity());
if (acct != null) {
String personName = acct.getDisplayName();
String personGivenName = acct.getGivenName();
String personFamilyName = acct.getFamilyName();
String personEmail = acct.getEmail();
String personId = acct.getId();
Uri personPhoto = acct.getPhotoUrl();
}
要了解更多信息,请转到官方文档:https://developers.google.com/identity/sign-in/android/people