I am trying to get Google plus cover photo using the following code:
if (Plus.PeopleApi.getCurrentPerson(mGoogleApiClient) != null)
{
Person currentPerson = Plus.PeopleApi.getCurrentPerson(mGoogleApiClient);
String personName = currentPerson.getDisplayName();
String userId = currentPerson.getId();
personPhotoUrl = currentPerson.getImage().getUrl();
String personGooglePlusProfile = currentPerson.getUrl();
boolean coverphoto = currentPerson.getCover().hasCoverPhoto();
String urlBackgroud = currentPerson.getCover().getCoverPhoto().getUrl();
String email = Plus.AccountApi.getAccountName(mGoogleApiClient);
Log.e("url","Background"+photo);
Log.e(TAG, "Name: " + personName + ", plusProfile: "
+ personGooglePlusProfile + ", email: " + email
+ ", Image: " + personPhotoUrl + ", userId: " + userId );
When I have set the Cover photo. I get the result with URL but I don't set the cover photo then I get the following error
07-28 18:18:39.952: W/System.err(9566): java.lang.NullPointerException
07-28 18:18:39.952: W/System.err(9566): at com.ylg.maps.MainActivity.getProfileInformation(MainActivity.java:224)
07-28 18:18:39.952: W/System.err(9566): at com.ylg.maps.MainActivity.onConnected(MainActivity.java:178)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.internal.hd.c(Unknown Source)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.common.api.c.eF(Unknown Source)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.common.api.c.d(Unknown Source)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.common.api.c$2.onConnected(Unknown Source)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.internal.hd.c(Unknown Source)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.internal.hd.ck(Unknown Source)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.internal.hc$h.b(Unknown Source)
07-28 18:18:39.952: W/System.err(9566): at com.google.android.gms.internal.hc$h.d(Unknown Source)
07-28 18:18:39.959: W/System.err(9566): at com.google.android.gms.internal.hc$b.fq(Unknown Source)
07-28 18:18:39.959: W/System.err(9566): at com.google.android.gms.internal.hc$a.handleMessage(Unknown Source)
07-28 18:18:39.959: W/System.err(9566): at android.os.Handler.dispatchMessage(Handler.java:99)
07-28 18:18:39.959: W/System.err(9566): at android.os.Looper.loop(Looper.java:137)
07-28 18:18:39.959: W/System.err(9566): at android.app.ActivityThread.main(ActivityThread.java:5103)
07-28 18:18:39.959: W/System.err(9566): at java.lang.reflect.Method.invokeNative(Native Method)
07-28 18:18:39.959: W/System.err(9566): at java.lang.reflect.Method.invoke(Method.java:525)
07-28 18:18:39.959: W/System.err(9566): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
07-28 18:18:39.959: W/System.err(9566): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
07-28 18:18:39.959: W/System.err(9566): at dalvik.system.NativeStart.main(Native Method)
Then I tried:
boolean coverphoto = currentPerson.getCover().hasCoverPhoto();
I am still getting the above error. How to solve the issue for user's not settings cover photo?
Thanks!
You need to make an additional call when your google client is connected as follow :