图像分享从Android到脸书?

时间:2010-10-22 09:29:00

标签: android

如何在Android中将我的应用程序中的图像分享到脸书?

3 个答案:

答案 0 :(得分:6)

public void shareOnFacebook() {
    Uri uri = Uri.parse("http://m.facebook.com/sharer.php?u=" +
            website_url + "&t="+ someTitle.replaceAll(" ","+");
    Intent intent = new Intent(Intent.ACTION_VIEW, uri);
    startActivity(intent);
}

您的网站应该包含

等元标记
<link rel="image_src" type="image/jpeg" href="http://www.domain.com/someimage.jpg" />

然后将在Facebook上用作促销图片。当然,这也可以在服务器端动态完成。

这是您使用已经在某个服务器上的图像的方法,因此您无需先将其从Android设备发送到服务器。根据您的使用情况,这通常是最简单的方法。

答案 1 :(得分:2)

您可以使用Facebook SDK for Android实现此目的。

更好的方法是允许用户使用自己选择的服务共享图像。 Android可以自动显示可以为您处理图像的应用列表。只需声明您有图像要发送到某个地方:

Intent share = new Intent(Intent.ACTION_SEND);
share.setType("image/jpeg");
share.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///sdcard/path/to/image.ext"));

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

答案 2 :(得分:0)

尝试使用Facebook SDK for android

private void sharePhotoToFacebook() {

    byte[] byteArray = getIntent().getByteArrayExtra("image");
    Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);

    SharePhoto photo = new SharePhoto.Builder()
            .setBitmap(bmp).setCaption("This is a text")
            .build();
    SharePhotoContent content = new SharePhotoContent.Builder()
            .addPhoto(photo)
            .build();
    ShareApi.share(content, null);
}

有关共享

的详细信息,请参阅here