Android使用Intent.ACTION_SEND分享图片和文字内容的示例代码

本文讲述了Android版Intent.ACTION_SEND分享图片和文字内容。分享给大家供大家参考,具体如下:

编辑推荐:稀土掘金,这是一个针对技术开发者的一个应用,你可以在掘金上获取最新最优质的技术干货,不仅仅是Android知识、前端、后端以至于产品和设计都有涉猎,想成为全栈工程师的朋友不要错过!

下面的方法只能实现普通的文字分享:

private void shareContent() {
 Intent share = new Intent(android.content.Intent.ACTION_SEND);
 share.setType("text/plain");
 String title = "标题";
 String extraText="给大家介绍一个好网站,www.jcodecraeer.com";
 share.putExtra(Intent.EXTRA_TEXT, extraText);
 if (title != null) {
 share.putExtra(Intent.EXTRA_SUBJECT, title);
 }
 startActivity(Intent.createChooser(share, "分享一下")); 
 }

那如果我想同时分享图片和文字到新浪微博的话,则使用下面的方法:

private void share(String content, Uri uri){
 Intent shareIntent = new Intent(Intent.ACTION_SEND);
 if(uri!=null){
 shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
 shareIntent.setType("image/*");
 //当用户选择短信时使用sms_body取得文字
 shareIntent.putExtra("sms_body", content);
 }else{
 shareIntent.setType("text/plain");
 }
 shareIntent.putExtra(Intent.EXTRA_TEXT, content);
 //自定义选择框的标题
 startActivity(Intent.createChooser(shareIntent, "邀请好友"));
 //系统默认标题
       
}

之所以这种方法可以传递图片,是因为shareIntent.setType("image/*"),而 setType("image/*")可以传递文字也可以传递图片;其中图片内容可以由Uri指定,注意需要将图片的url转换成uri。

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

你可能感兴趣的:(Android使用Intent.ACTION_SEND分享图片和文字内容的示例代码)