Facebook SDK for Android gives wrong result for cover picture -


i'm developing app uses facebook user login purposes. process succesfully completed, when ask facebook user's information (with corresponding permissions), cover picture. response "facebook_non_json_result" , jfif image error code 200, instead of expected response of json object image's url, this:

[{response:  responsecode: 200, graphobject: graphobject{graphobjectclass=graphobject, state={"facebook_non_json_result":"����\u0000\u0010jfif\u0000\u0001\u0002\u0000\u0000\u0001\u0000\u0001\u0000\u0000��\u0000\u0004*\u0000��\u0002\u001cicc_profile\u0000\u0001\u0001\u0000\u0000\u0002"}}, error: null, isfromcache:false}] 

i tested app's access token @ graph api explorer in facebook's developer page, , worked there. issue happens in device, have no clue of problem may be.

i changed app's permissions recently. however, app has been running new permissions until today, response changed jfif image. if give me indications or solutions problem, i'd grateful.

edit: here part of source code:

public void getimage(string image_id, int width, int height) {      session session = session.getactivesession();      // request parameters     bundle requestparams = new bundle();     requestparams.putstring("access_token", session.getaccesstoken());     requestparams.putboolean("redirect", false);     requestparams.putint("width", width);     requestparams.putint("height", height);      // request url     string requesturl = "/" + image_id + "/picture";      request request = new request(session, requesturl, requestparams, httpmethod.get, callback);      response response = request.executeandwait();     if (response.geterror() == null)     {         setresponsejson(response.getgraphobject().getinnerjsonobject());     } } 

here async class getting users facebook. thing need facebook user id.

private class setuserfacebookimage extends asynctask {

    private progressdialog progressdialog;      @override     protected void onpreexecute() {         progressdialog = new progressdialog(getactivity());         progressdialog.setmessage("retrieving facebook profile image...");         progressdialog.setindeterminate(true);         progressdialog.setcancelable(false);         progressdialog.show();     }      @override     protected bitmap doinbackground(string... params) {         string urlstr = params[0];         bitmap img = null;          httpclient client = new defaulthttpclient();         httpget request = new httpget(urlstr);         httpresponse response;         try {             response = (httpresponse)client.execute(request);                        httpentity entity = response.getentity();             bufferedhttpentity bufferedentity = new bufferedhttpentity(entity);             inputstream inputstream = bufferedentity.getcontent();             img = bitmapfactory.decodestream(inputstream);                } catch (malformedurlexception e) {             log.e(fragment_name, "invalid url");             e.printstacktrace();         } catch (ioexception e) {             log.e(fragment_name, "unable parse facebook image");             e.printstacktrace();         }                 return img;     }      protected void onpostexecute(bitmap bitmap) {         progressdialog.dismiss();          if(bitmap != null) {             muserprofileimageview.setimagebitmap(bitmap);             muser.setprofile_picture(mimageadapter.encodebitmap(bitmap));         } else             muserprofileinterface.relayuservalidationerror(                     getresources().getstring(r.string.facebook_unable_to_get_user_profile));     } } 

you can call task this:

new setuserfacebookimage().execute(new string[] {getfacebookuserurl(muser.getface_book_id())}); 

Comments

Popular posts from this blog

matlab - Deleting rows with specific rules -

jquery - How would i go about shortening this code? And to cancel the previous click on click of new section? -