私のアンドロイドアプリには、Google Plusでログインする機能があります。私はうまくいった。しかし、私は次の活動のテキストビューでユーザー名、電子メールのようなそのデータを表示したい。私はすでにこれらのことを意図して、余分なタグを入れて、次の活動に取り込んでいます。バンドルのヌル参照であるエラーが発生しました。ここで私はエラーログを添付しました。前もって感謝します。ここ androidのバンドルオブジェクトを使用してデータを取得する方法
Googleplus.java
private void handleSignInResult(GoogleSignInResult result) {
Log.d(TAG, "handleSignInResult:" + result.isSuccess());
if (result.isSuccess()) {
// Signed in successfully, show authenticated UI.
final GoogleSignInAccount acct = result.getSignInAccount();
Log.e(TAG, "display name: " + acct.getGivenName());
String personName = acct.getGivenName();
String personLastName = acct.getFamilyName();
String email = acct.getEmail();
Log.e(TAG, "Name: " + personName + ", email: " + email + ", lastname: " + personLastName);
loginButton.setVisibility(View.GONE);
btnSignIn.setVisibility(View.GONE);
txtDisplayText.setVisibility(View.GONE);
btnLogin.setVisibility(View.GONE);
app_bar.setVisibility(View.GONE);
txtFooterText.setVisibility(View.GONE);
digitsButton.setVisibility(View.GONE);
activity_choose_login_account.setBackgroundResource(R.mipmap.scree);
Intent ii = new Intent(ChooseLoginAccountActivity.this, GoogleplusActivity.class);
ii.putExtra(PROFILE_USERNAME, acct.getGivenName());
ii.putExtra(PROFILE_USERLASTNAME, acct.getFamilyName());
ii.putExtra(PROFILE_EMAIL_GOOGLE, acct.getEmail());
startActivity(ii);
}
}
は私のretriveuserinfo.java
create method for retrieve bundle
private String returnValueFromBundles(String key) {
Bundle inBundle = getIntent().getExtras();
String returnedValue = inBundle.get(key).toString();
return returnedValue;
}
//here get value from chooseloginactivity.java
String profilename = returnValueFromBundles(ChooseLoginAccountActivity.PROFILE_USERNAME);
String profilelastname = returnValueFromBundles(ChooseLoginAccountActivity.PROFILE_USERLASTNAME);
String profileemail = returnValueFromBundles(ChooseLoginAccountActivity.PROFILE_EMAIL_GOOGLE);
//textview findviewbyid
txtFirstName =(TextView)customView.findViewById(R.id.txtFirstName);
txtLastName = (TextView) customView.findViewById(R.id.txtLastName);
txtEmail = (TextView) customView.findViewById(R.id.txtEmail);
//set bundle value in textview for displaying
txtFirstName.setText(profilename);
txtLastName.setText(profilelastname);
txtEmail.setText(profileemail);
ご協力いただきありがとうございます。 :) @ user2285117 –
あなたの歓迎ハッピーコーディング... !! –