我认为您应该检查:
GoogleSignIn.hasPermissions(account, Games.SCOPE_GAMES_LITE).
如果该帐户没有权限,则应使用
GoogleSignIn.getClient(this, gso).silentSignIn or GoogleSignIn.getClient(this, gso).getSignInIntent()
与 startActivityForResult 一起接收 GAMES_LITE 范围的帐户。
__对于空帐户, GoogleSignIn.hasPermissions
还返回false,这也可能是getLastSignedInAccount的结果。
例:
GoogleSignInAccount account = GoogleSignIn.getLastSignedInAccount(this);if (GoogleSignIn.hasPermissions(account, Games.SCOPE_GAMES_LITE)) { onSignIn(account);} else { signInClient .silentSignIn() .addonCompleteListener( this, task -> { if (task.isSuccessful()) { onSignIn(task.getResult()); } else { resetSignedIn(); } });}


