Не удалось подписать аккаунт GoogleAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Не удалось подписать аккаунт Google

Сообщение Anonymous »

Я внедрил вход в приложение Google для резервного копирования данных приложения.
Я успешно использую его уже больше года.
Сегодня, пытаясь устранить ошибку, я удалил -установил приложение, внес некоторые изменения и попытался восстановить данные приложения (код восстановления использует знак учетной записи Google).
Поэтому я получил исключение нулевого указателя, потому что код подписи учетной записи Google не работает.
Здесь является актуальным код.

Код: Выделить всё

import com.google.android.gms.auth.api.signin.GoogleSignIn;
import com.google.android.gms.auth.api.signin.GoogleSignInAccount;
import com.google.android.gms.auth.api.signin.GoogleSignInClient;
import com.google.android.gms.auth.api.signin.GoogleSignInOptions;
import com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential;
import com.google.api.client.googleapis.extensions.android.gms.auth.UserRecoverableAuthIOException;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

try {
GoogleSignInAccount googleSignInAccount = GoogleSignIn.getLastSignedInAccount(this);
//Log.d("Checj","Check");
if (googleSignInAccount == null) {
signIn();

}
GoogleAccountCredential credential = GoogleAccountCredential.usingOAuth2(this, Collections.singleton(Scopes.DRIVE_FILE));
credential.setSelectedAccount(googleSignInAccount.getAccount());
googleDriveService = new Drive.Builder(
AndroidHttp.newCompatibleTransport(),
new GsonFactory(),
credential)
.setApplicationName(getString(R.string.app_name))
.build();

} catch (Exception e) {

e.printStackTrace();
}

}
private void signIn() {

mGoogleSignInClient = buildGoogleSignInClient();
Log.d("Check Here",mGoogleSignInClient.toString());
startActivityForResult(mGoogleSignInClient.getSignInIntent(), REQUEST_CODE_SIGN_IN);
//Log.d("Check Here",mGoogleSignInClient.toString());
}

private GoogleSignInClient buildGoogleSignInClient() {
GoogleSignInOptions signInOptions =
new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestScopes(new Scope(Scopes.DRIVE_APPFOLDER))
.requestEmail()
.build();
return GoogleSignIn.getClient(getApplicationContext(), signInOptions);
}

private void handleSignInResult(Intent result) {
GoogleSignIn.getSignedInAccountFromIntent(result)
.addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(GoogleSignInAccount googleSignInAccount) {
Log.d("Sucess", "We have logged in");
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.e("Failed to login", "Unable to sign in.", e);
}
});
}

@Override
public void onActivityResult(int requestCode, int resultCode, Intent resultData) {
switch (requestCode) {
case REQUEST_CODE_SIGN_IN:
if (resultCode == Activity.RESULT_OK && resultData != null) {
handleSignInResult(resultData);
}
break;

}

super.onActivityResult(requestCode, resultCode, resultData);
}
Приложение работало правильно (успешно выполнен вход в Google и резервное копирование данных).
Есть предложения, как заставить его работать?

Подробнее здесь: https://stackoverflow.com/questions/793 ... gn-failing
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»