我想在Facebook上通过共享 Intent 与带有从我的应用程序中预先填充的标题的照片共享。

我知道如何分享照片或文本,但是如何一起分享呢?

范例程式码

Intent shareCaptionIntent = new Intent(Intent.ACTION_SEND);
    shareCaptionIntent.setType("image/*");

    //set photo
    shareCaptionIntent.setData(examplePhoto);
    shareCaptionIntent.putExtra(Intent.EXTRA_STREAM, examplePhoto);

    //set caption
    shareCaptionIntent.putExtra(Intent.EXTRA_TEXT, "example caption");
    shareCaptionIntent.putExtra(Intent.EXTRA_SUBJECT, "example caption");

    startActivity(Intent.createChooser(shareCaptionIntent,getString(R.string.share)));

如果将类型设置为image/*,则将上传照片,但不预填标题。如果将其设置为text/plain,则仅上传字幕而没有照片..

我的猜测是问题在于,Android Facebook应用程序在过滤照片上传类型为Intent.EXTRA_TEXTACTION_SEND Intent时,并没有寻找image/*因此,如果Android Facebook App寻找该值并将其作为图像的标题插入(如果存在),则可以解决此问题。

最佳答案

将此行添加到您现有的代码中:

shareCaptionIntent.putExtra(Intent.EXTRA_TITLE, "my awesome caption in the EXTRA_TITLE field");

EXTRA_TITLE,EXTRA_SUBJECT和EXTRA_TEXT之间没有明确定义的差异。因此,没有明确的共享协议(protocol)。我们可以随时尝试所有方法。 :-)

09-27 05:44