Мне нужно передать текстовую строку вместе с намерением входа в Google, чтобы я мог получить ее позже с помощью метода onActivityResult
.
Я запускаю операцию выбора учетной записи GSI с помощью следующего код
GoogleSignInOptions googleSignInOptions = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestIdToken("xxxxxxxxxxxxxxxxxxxxx")
.requestEmail()
.build();
final GoogleSignInClient client = GoogleSignIn.getClient(MainActivity.activity, googleSignInOptions);
Intent signInIntent = client.getSignInIntent();
// As extra
signInIntent.putExtra("CALLSTACK_UID", newCallStack.uid);
this.startActivityForResult(signInIntent, RC_SIGN_IN);
и попытаться получить его позже через
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RC_SIGN_IN) {
String callstack_uid = data.getStringExtra("CALLSTACK_UID");
//...
}
}
data.getStringExtra("CALLSTACK_UID")
всегда возвращает null
, даже если он должен возвращать строку.
Мой единственный вариант здесь - создать переменную stati c в упражнении вместо передачи значения через намерение?