Question

I'm developing an module that use GoogleAccountCredential to login, upload & download a file to GoogleDrive.

I want to get user first, last name and avatar of google account for display on my login feature.

I've try

 GoogleAccountCredential.getAccountName()

But It return only account name.

And see about OAuth 2.0 but not sure It can provide which I needed.

Don't know where to get those infomation, any suggestion also help me. It's awsome if have some examples

Was it helpful?

Solution

ianhanniballake's answer works, but there is a better way to do it. You don't need Google+ sign in to get user info.

Authorize with scope https://www.googleapis.com/auth/userinfo.profile

Make GET request to https://www.googleapis.com/oauth2/v1/userinfo?alt=json

You will get

{
 "id": "xx",
 "name": "xx",
 "given_name": "xx",
 "family_name": "xx",
 "link": "xx",
 "picture": "xx",
 "gender": "xx",
 "locale": "xx"
}

There are also language specific working codes in the following documentation: Retrieving and Using OAuth 2.0 Credentials.

Have fun!

OTHER TIPS

To get this information, you must use Google+ Sign In, which gives you a PlusClient object on successful login. You can then use PlusClient.getCurrentPerson to retrieve a Person (who has a getName() and getImage() method) and PlusClient.getAccountName() to get the accountName, which you would use in the same way as if you had used GoogleAccountCredential:

String accessToken = GoogleAuthUtil.getToken(context, accountName, OAUTH2_SCOPE);
final GoogleCredential credential = new GoogleCredential();
credential.setAccessToken(accessToken);
Drive driveConnection = new Drive.Builder(AndroidHttp.newCompatibleTransport(), 
    new GsonFactory(), credential).setApplicationName(APP_NAME).build();

Looks like Google has deprecated the userinfo endpoint that JunYoung mentioned in favor of the Google+ Sign-in. They will stop supporting the userinfo endpoint by August, 2014. See the link below for details:

https://developers.google.com/+/api/auth-migration

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top