android中的Google Plus封面照片
我正在尝试使用以下代码获取Google plus封面照片:android中的Google Plus封面照片,android,google-plus,Android,Google Plus,我正在尝试使用以下代码获取Google plus封面照片: if (Plus.PeopleApi.getCurrentPerson(mGoogleApiClient) != null) { Person currentPerson = Plus.PeopleApi.getCurrentPerson(mGoogleApiClient); String personName = currentPerson.getDisplayName(); String userId = curren
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 );
当我把封面照好的时候。我得到的结果与网址,但我没有设置封面照片,然后我得到以下错误
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)
然后我试着:
boolean coverphoto = currentPerson.getCover().hasCoverPhoto();
我仍然得到上述错误。如何解决用户未设置封面照片的问题
谢谢 当您的google客户端连接时,您需要再打一个电话 详情如下:
if (mGoogleApiClient.isConnected()) {
Plus.PeopleApi.load(mGoogleApiClient, person.getId())
.setResultCallback(new ResultCallback<People.LoadPeopleResult>() {
@Override
public void onResult(People.LoadPeopleResult loadPeopleResult) {
if (loadPeopleResult.getStatus().isSuccess()) {
PersonBuffer personBuffer = loadPeopleResult.getPersonBuffer();
if (personBuffer != null && personBuffer.getCount() > 0) {
Person currentUser = personBuffer.get(0);
personBuffer.release();
Person.Cover cover = currentUser.getCover();
if (cover != null) {
Person.Cover.CoverPhoto coverPhoto = cover.getCoverPhoto();
if (coverPhoto != null) {
String userCoverPhotoUrl = coverPhoto.getUrl();
Log.i("Main TAG", "Cover photo Url :" + userCoverPhotoUrl);
}
} else {
Log.i("TAG NO COVER", "Person has no cover");
}
}
}
}
});
}
if(mGoogleApiClient.isConnected()){
Plus.PeopleApi.load(mGoogleApiClient,person.getId())
.setResultCallback(新的ResultCallback(){
@凌驾
public void onResult(People.LoadPeopleResult LoadPeopleResult){
如果(loadPeopleResult.getStatus().isSuccess()){
PersonBuffer PersonBuffer=loadPeopleResult.getPersonBuffer();
if(personBuffer!=null&&personBuffer.getCount()>0){
Person currentUser=personBuffer.get(0);
personBuffer.release();
Person.Cover Cover=currentUser.getCover();
if(cover!=null){
Person.Cover.CoverPhoto CoverPhoto=Cover.getCoverPhoto();
如果(封面照片!=null){
字符串userCoverPhotoUrl=coverPhoto.getUrl();
Log.i(“主标签”,“封面照片Url:+userCoverPhotoUrl”);
}
}否则{
Log.i(“标签无封面”、“人员无封面”);
}
}
}
}
});
}
是currentPerson.getCover().hasCoverPhoto()当未设置封面图片时,代码>返回false?@Spring Breaker:它给出相同的NullPointerException您是否已初始化currentPerson
如下Person currentPerson=Plus.PeopleApi.getCurrentPerson(mgoogleapicClient)代码>?你能发布行号224和178吗?行#224:boolean photo=currentPerson.getCover().hasCoverPhoto();第178行:获取信息();(这是一个方法-它具有获取配置文件详细信息的代码.)