在Android上分享图像和文字到Facebook

Iai*_*ith 8 android facebook facebook-sdk-3.14.x

在android中分享图像和文本到Facebook的正确方法是什么?例如带有预先填充文本的图片.

我知道这是不可能的从原生Android份额意图描述这里.因为它只能拍摄图像或链接而不是两者.

我也试过使用facebook-sdk-3.14:

    FacebookDialog.ShareDialogBuilder 
Run Code Online (Sandbox Code Playgroud)

但我现在意识到这只是为了分享链接.

我也尝试过:

    createShareDialogBuilderForPhoto() 
Run Code Online (Sandbox Code Playgroud)

但这仅用于共享图像.

我在sdk中缺少什么?我猜猜FacebookDialog是不可能的?

我是否需要在facebook中创建自己的应用程序以及我自己的开放图形操作?理想情况下,我希望没有登录按钮.

我也看到了类似的问题,但大多数是关于共享意图,或者如果它是sdk它至少一年过时,解决方案是类似的事情:

    Bundle parameters = new Bundle();
            parameters.putString("message", category_item_name_desc.getText().toString());
            parameters.putString("picture", categoryItemsModel.getImageUrl());
            parameters.putString("caption", txtDescription_desc.getText().toString());
            facebook.request("/me/feed", parameters, "POST");
Run Code Online (Sandbox Code Playgroud)

通过Feed对话框(WebDialog)尝试但是我得到一个"错误(#324)需要上传文件",任何帮助都会很棒.

Dee*_*uri 5

您可以在Facebook,Twitter和Gmail上分享您的图片:

Bitmap b =BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher);

Intent share = new Intent(Intent.ACTION_SEND);

share.setType(“image/jpeg”);

ByteArrayOutputStream bytes = new ByteArrayOutputStream();
b.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
String path = MediaStore.Images.Media.insertImage(getContentResolver(), b, “Title”, null);
Uri imageUri = Uri.parse(path);
share.putExtra(Intent.EXTRA_STREAM, imageUri);
startActivity(Intent.createChooser(share, “Select”));
Run Code Online (Sandbox Code Playgroud)


Iai*_*ith 2

我可以使用当前的 Facebook SDK(当时为 3.14.1)自行完成此操作,无需登录,并且我将其放入共享意图中以添加到选择器列表中。

我在https://github.com/b099l3/FacebookImageShareIntent有一个演示项目,唯一的依赖项是 facebook sdk,它包含在一个活动中。