1

This bug has been reported for a year and no fixed yet

http://forum.developers.facebook.net/viewtopic.php?id=93900

http://bugs.developers.facebook.net/show_bug.cgi?id=16728

I try workaround mentioned here, it doesn't work either. I am using facebook version 1.8.3

How to share photo with CAPTION via Android share intent on Facebook?

What is the true workaround then?

Community
  • 1
  • 1
Cheok Yan Cheng
  • 47,586
  • 132
  • 466
  • 875

1 Answers1

0

If you want to share something on Facebook or twitter from your android application first you have to integrate your application with Android SDK and Twitter SDK. If You want to share these bethout integrating these then you can do this by simply send intent like given below...

public class MainActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // listeners of our two buttons
    View.OnClickListener handler = new View.OnClickListener() {
        public void onClick(View v) {
            switch (v.getId()) {

            case R.id.buttonShareTextUrl:
                shareTextUrl();  
                break;

            case R.id.buttonShareImage:
                shareImage();
                break;
            }
        }
    };

    // our buttons
    findViewById(R.id.buttonShareTextUrl).setOnClickListener(handler);
    findViewById(R.id.buttonShareImage).setOnClickListener(handler);

}

/*
 * Method to share either text or URL.
 */ 
private void shareTextUrl() { 
    Intent share = new Intent(android.content.Intent.ACTION_SEND);
    share.setType("text/plain");
    share.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET); 

    // Add data to the intent, the receiving app will decide
    // what to do with it.
    share.putExtra(Intent.EXTRA_SUBJECT, "Title Of The Post");
    share.putExtra(Intent.EXTRA_TEXT, "http://two55am.com");

    startActivity(Intent.createChooser(share, "Share link!"));
}    

/*
 * Method to share any image.
 */
private void shareImage() {
    Intent share = new Intent(Intent.ACTION_SEND);

    // If you want to share a png image only, you can do:
    // setType("image/png"); OR for jpeg: setType("image/jpeg");
    share.setType("image/*");

    // Make sure you put example png image named myImage.png in your
    // directory
    String imagePath = Environment.getExternalStorageDirectory()
            + "/twitter.png";

    File imageFileToShare = new File(imagePath);

    Uri uri = Uri.fromFile(imageFileToShare);
    share.putExtra(Intent.EXTRA_STREAM, uri);

    startActivity(Intent.createChooser(share, "Share Image!"));
}

}

Note that you Facebook and twitter apk should be installed in your device/emulator to work above code.

Ravi Y
  • 4,296
  • 2
  • 27
  • 38
SRMTwo55am
  • 11
  • 1
  • 4