此错误已报告一年,尚未修复
http://forum.developers.facebook.net/viewtopic.php?id=93900
http://bugs.developers.facebook.net/show_bug.cgi?id=16728
我尝试了这里提到的解决方法,它也不起作用。我使用的是facebook版本1.8.3
How to share photo with CAPTION via Android share intent on Facebook?
那么真正的解决方法是什么?
答案 0 :(得分:0)
如果您想首先从Android应用程序在Facebook或Twitter上分享内容,您必须将您的应用程序与Android SDK和Twitter SDK集成。如果你想分享这些积累的这些,那么你可以通过简单地发送如下给出的意图来做到这一点......
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!"));
}
}
请注意,您应该在设备/模拟器中安装Facebook和twitter apk,以便在代码之上工作。