In meiner Anwendung habe ich die GoogleSignInApi umgesetzt, mit diesem Code:Android | SignIn Google Api manchmal nicht funktioniert
in onCreate:
GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken(getString(R.string.server_client_id))
.requestEmail()
.build();
mGoogleApiClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this /* FragmentActivity */, null /* OnConnectionFailedListener */)
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.build();
in einer AsyncTask
if (mGoogleApiClient != null)
mGoogleApiClient.connect();
if (mGoogleApiClient != null) {
ConnectionResult result = mGoogleApiClient.blockingConnect();
if(result.isSuccess()){
GoogleSignInResult googleSignInResult = Auth.GoogleSignInApi.silentSignIn(mGoogleApiClient).await();
GoogleSignInAccount account = googleSignInResult.getSignInAccount();
authToken = account.getIdToken();
}else {
return null;
}
}else{
return null;
}
Die App Absturz bei "Versuch, virtuelle Methode aufzurufen" java.lang.String com.google.android.gms.auth.api.signin.GoogleSignInAccount.getIdToken() 'für eine Nullobjekt-Referenz "(Konto ist null!)
Jetzt I bin ad ded if (account! = null) {Fehler erhalten}, aber warum könnte account null sein, wenn "result.isSuccess()"?
Okay, danke ... Aber der Benutzer sagt mir, dass er authentifiziert ist und die App abstürzt 'bei account.getIdToken()'. Mit meinem Gerät oder Emulator habe ich dieses Problem nicht. Ich habe keine Ahnung, was ich tun soll. –