我想在Facebook上通过分享意图与我的应用预先填充的标题分享照片。
我知道如何分享照片或如何分享文字,但如何将它们分享?
示例代码
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 App在过滤Intent.EXTRA_TEXT
类型为ACTION_SEND
的意图进行照片上传时不会查找image/*
。 因此,如果Android Facebook应用程序查找该值,则可以解决此问题,如果存在,则将其作为图像的标题插入。
答案 0 :(得分:10)
将此行添加到现有代码中:
shareCaptionIntent.putExtra(Intent.EXTRA_TITLE, "my awesome caption in the EXTRA_TITLE field");
EXTRA_TITLE,EXTRA_SUBJECT和EXTRA_TEXT之间没有明确的差异。所以没有明确的共享协议。我们总是可以尝试所有这些。 : - )
答案 1 :(得分:8)
此问题似乎是facebook应用程序的长期“功能”。它对意图的处理从未处于完全功能状态。
检查http://forum.developers.facebook.net/viewtopic.php?id=93900
上的链接这需要在facebook上与开发人员一起提升。依赖隐藏在客户端API之后而不是修复显而易见的东西正在对他们起作用。