通过Twitter应用程序分享来自URL的图片 - Android

7

我正在尝试通过Twitter应用程序分享一些文本和图像。 图像源是Web URL。 以下是我的代码:

sharingIntent = new Intent(android.content.Intent.ACTION_SEND);    
sharingIntent.setType("*/*");    
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, "I am reading this publication, check it out here: "+bookmark_url+"");
sharingIntent.putExtra(android.content.Intent.EXTRA_STREAM, Uri.parse("http://example.com/images/thumbs/file_name.jpg"));

但是仅有文字被通过Twitter应用程序分享。我也收到一条信息,上面写着“图片无法加载”。这段代码有什么问题?


请告诉我是否有任何解决方法。 - Sourav
希望以下链接能对你有所帮助。链接 - JIthin
1个回答

7
Sourav,我认为在分享图片之前你必须先下载它。你可以手动下载,或者你也可以使用像这个库这样的工具。在该库的仓库中可以找到易于理解的文档,介绍如何设置和使用它。
下载完图片后,你可以按照以下方法进行操作:
private Intent shareIntent(String bookmark_url, String imagePath){
    sharingIntent = new Intent(android.content.Intent.ACTION_SEND);    
    sharingIntent.setType("*/*");    
    sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, "I am reading this publication, check it out here: "+bookmark_url);
    sharingIntent.putExtra(android.content.Intent.EXTRA_STREAM, Uri.fromFile(new File(imagePath)));
    return sharingIntent;
}

如果您只想模拟“即时解析图像”,并在共享后删除它,请按照此方法操作。
希望这可以帮助您!

我在SD卡的存储方面有一些限制...您能确认直接从URL分享图像在Twitter上不可能吗? - Sourav
我已经看到在其他平台上发生过,比如iOS。 - Sourav
@Sourav 我无法确认从URL直接共享图像是否不可能,但我很确定有两个原因:第一,你的错误非常明显:“无法加载图像”;第二,我曾经使用PHP的Twitter API工作过,我必须在发送推文之前下载图片,因为如果我不这样做,我会得到没有图片的文本推文,就像你一样。 - user2528167

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接