0
votes

I have a problem that I am posting a string message on the Facebook but get Some Error while posting I don't know why because same code is running in different project. Please help me regarding this.

Error Stack:

10-19 11:40:43.065: ERROR/AndroidRuntime(7466): FATAL EXCEPTION: main
10-19 11:40:43.065: ERROR/AndroidRuntime(7466): java.lang.NullPointerException
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at com.halosys.TvAnyTime.VideoPlayer$7.onClick(VideoPlayer.java:304)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at android.view.View.performClick(View.java:2408)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at android.view.View$PerformClick.run(View.java:8818)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at android.os.Handler.handleCallback(Handler.java:587)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at android.os.Handler.dispatchMessage(Handler.java:92)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at android.os.Looper.loop(Looper.java:123)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at java.lang.reflect.Method.invokeNative(Native Method)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at java.lang.reflect.Method.invoke(Method.java:521)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at dalvik.system.NativeStart.main(Native Method)

New Code:

//Bundle parameters = new Bundle(); String str_post=null; if(rating.equals("")) { str_post = "TV Anytime lets you watch the shows and movies you love on your iPhone, iPad or PC for free without the need for a network. TVAnytime is the first FREE streaming video DVR for your iPhone, iPad or PC.\n"+name+" just watched "+MovieName+" on iPhone with TvAnytime!\n"+ed_Post.getText().toString()+""; }else { str_post = "TV Anytime lets you watch the shows and movies you love on your iPhone, iPad or PC for free without the need for a network. TVAnytime is the first FREE streaming video DVR for your iPhone, iPad or PC.\n"+name+" just watched "+MovieName+" on iPhone with TvAnytime!\n"+ed_Post.getText().toString()+"\nRating "+rating+" out of 5"; } //parameters.putString("message", str_post); //IntroFaceBookScreen.mFacebook.authorize(VideoPlayer.this, new String[]{"publish_stream", "read_stream", "offline_access"},IntroFaceBookScreen.mFacebook.FORCE_DIALOG_AUTH,new FacebookDialogListener(VideoPlayer.this)); /*String response = null; try { response = mFacebook.request("me"); } catch (MalformedURLException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } Bundle parameters = new Bundle(); parameters.putString("message", str_post); //posting image code

                    Bitmap bm = BitmapFactory.decodeFile("/sdcard/showIcon/show_S00275.png");
                    ByteArrayOutputStream baos = new ByteArrayOutputStream();  
                    bm.compress(Bitmap.CompressFormat.PNG, 100, baos); //bm is the bitmap object   
                    byte[] imgData = baos.toByteArray(); 


                    parameters.putByteArray("picture", imgData);




                    parameters.putString("description", "test test test");
                    try {

                        response = mFacebook.request("me/feed", parameters, "POST");
                    } catch (FileNotFoundException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    } catch (MalformedURLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                    Log.d("Tests", "got response: " + response);
                    if (response == null || response.equals("") || 
                            response.equals("false")) {
                       Log.v("Error", "Blank response");
                    }*/
                    post_to_wall(str_post);
                    /* mFacebook.dialog(VideoPlayer.this, "feed",
                                new SampleDialogListener());*/
                    dismissDialog(0);
                }
            });

        btn_Cancel.setOnClickListener(new View.OnClickListener() {

            public void onClick(View arg0) {

                removeDialog(0);
            }
        });

        break;
}
return dialog;

} protected void post_to_wall(String str_post) {

 try{
      Bitmap bm = BitmapFactory.decodeFile("/sdcard/showIcon/show_S00275.png");
      ByteArrayOutputStream baos = new ByteArrayOutputStream();  
      bm.compress(Bitmap.CompressFormat.PNG, 100, baos); //bm is the bitmap object   
      byte[] imgData = baos.toByteArray(); 
      Bundle parameters = new Bundle();
      parameters.putString("message", "Test Post in Facebook Wal");
      parameters.putString("description", str_post);
      parameters.putByteArray("picture", imgData);
      String  response = mFacebook.request("me/feed",parameters,"POST");       
      Log.v("response", response);
   }
   catch(Exception e){
       System.out.println("The error Message = "+e);
   }

}

1

1 Answers

0
votes
10-19 11:40:43.065: ERROR/AndroidRuntime(7466): java.lang.NullPointerException
10-19 11:40:43.065: ERROR/AndroidRuntime(7466):     at com.halosys.TvAnyTime.VideoPlayer$7.onClick(VideoPlayer.java:304)

From your Logcat Null pointer occurs in line number :304.

So check Error due to Post on Wall or Conversion of Bitmap to byteArray .

Try to post in Facebook wall like this Call a Method and pass necessary parameters like this :

post_on_wall(decription); 

Pass a parameter to method and simply your code also it will provide you Look and feel :

 post_on_wall(String desc) {
    try{
      Bundle parameters = new Bundle();
      parameters.putString("message", "Test Post in Facebook Wal");
      parameters.putString("description", desc);
      String  response = facebook.request("me/feed",parameters,"POST");       
      Log.v("response", response);
   }
   catch(Exception e){}
 }

For further example to post on facebook wall check Post on Wall