//之後我們調用這個函數 私人無效handleSignInResult(GoogleSignInResult結果){
//If the login succeed
if (result.isSuccess()) {
signInButton.setVisibility(View.GONE);
//Getting google account
GoogleSignInAccount acct = result.getSignInAccount();
String name=acct.getDisplayName();
String email=acct.getEmail();
Log.d("namegoogle",name);
Log.d("emailgoogle",email);
edit_signin_emailid.setText(email);
String fullname = acct.getDisplayName();
String[] parts = fullname.split("\\s+");
Log.d("Length-->",""+parts.length);
if(parts.length==2) {
String firstname = parts[0];
String lastname = parts[1];
Log.d("First-->", "" + firstname);
Log.d("Last-->", "" + lastname);
AppController.setStringPref("firstnamebook", firstname);
AppController.setStringPref("lastnamebook", lastname);
Log.d("FirstApp", "" + AppController.getStringPref("firstnamebook"));
Log.d("LastApp", "" + AppController.getStringPref("lastnamebook"));
}
else if(parts.length==3){
String firstname = parts[0];
String middlename = parts[1];
String lastname = parts[2];
Log.d("First-->", "" + firstname);
Log.d("Last-->", "" + lastname);
AppController.setStringPref("firstnamebook", firstname);
AppController.setStringPref("lastnamebook", lastname);
}
}
}
此解決方案(這裏使用的解決方案[鏈接](HTTP簽字: //stackoverflow.com/a/33817833/4723532),但該解決方案使用Google Plus API,而不是Android的常規Google SignIn API。 Google SignIn API的iOS版本提供了名字和姓氏分隔的選項,所以我想在Android中做到這一點,而無需額外的API。但是,無論如何,謝謝:) –
好的。標記爲答案,如果它可以幫助您 –
@AvivAbramovich:如果您不想使用Plus API,請嘗試https://developers.google.com/identity/sign-in/android/backend-auth#using-a-google -api-client-library或http://android-developers.blogspot.com/2016/01/using-google-sign-in-with-your-server.html查看它們是否可以幫助 – BNK