实现系统分享
程序员文章站
2022-04-20 10:06:41
使用手机上的程序,来分享/发送,比如QQ的“发送到我的电脑”。 1、分享/发送文本内容 通用步骤: 首先将Intent的cation设置为Intent.ACTION_SEND, 其次根据分享的内容设置不同的Type, 然后根据不同的社交平台设置相关Extras, 最后创建并启动选择器 2、分享/发送 ......
使用手机上的程序,来分享/发送,比如qq的“发送到我的电脑”。
1、分享/发送文本内容
1 intent shareintent = new intent(); 2 shareintent.setaction(intent.action_send); 3 shareintent.settype("text/plain"); 4 //要分享的文本内容,选择某项后会直接把这段文本发送出去,相当于调用选中的应用的接口,并传参 5 shareintent.putextra(intent.extra_text, "here is the shared text."); 6 //需要使用intent.createchooser,这里我们直接复用。第二个参数并不会显示出来 7 shareintent = intent.createchooser(shareintent, "here is the title of select box"); 8 startactivity(shareintent);
通用步骤:
首先将intent的cation设置为intent.action_send,
其次根据分享的内容设置不同的type,
然后根据不同的社交平台设置相关extras,
最后创建并启动选择器
2、分享/发送单张图片
1 //指定要分享的图片路径 2 uri imguri = uri.parse("mnt/sdcard/1.jpg"); 3 intent shareintent = new intent(); 4 shareintent.setaction(intent.action_send); 5 shareintent.putextra(intent.extra_stream, imguri); 6 shareintent.settype("image/*"); 7 shareintent = intent.createchooser(shareintent, "here is the title of select box"); 8 startactivity(shareintent);
注意根目录为 mnt/sdcard/
3、分享/发送多张图片
1 uri imguri1 = uri.parse("mnt/sdcard/1.jpg"); 2 uri imguri2 = uri.parse("mnt/sdcard/2.jpg"); 3 arraylist<uri> imguris = new arraylist<uri>(); //使用集合保存 4 imguris.add(imguri1); 5 imguris.add(imguri2); 6 7 intent shareintent = new intent(); 8 shareintent.setaction(intent.action_send_multiple); //注意是intent_action_multiple 9 shareintent.putparcelablearraylistextra(intent.extra_stream, imguris); //注意是方法是putparcelablearraylistextra() 10 shareintent.settype("image/*"); 11 shareintent = intent.createchooser(shareintent, "here is the title of select box"); 12 startactivity(shareintent);
上一篇: Vue组件间通信6种方式
下一篇: 一个php作的文本留言本的例子(二)