.withText(“hello”)//分享内容

.setCallback(umShareListener)//回调监听器

.share();

都是实例化的new ShareAction ,这个操作在你点击分享按钮的监听事件中实现。

withText(“”)是你分享的内容

setCallback是回调的监听

讲一下区别,无分享面板的,就直接.setPlatform(SHARE_MEDIA.QQ),直接传入相对应平台就可以调用。

有分享面板的,需要在setDisplayList中具体枚举所有的(按照顺序)分享平台。

2、具体实现分享内容

1)纯文本分享

new ShareAction(ShareActivity.this)

.withText(“hello”)

.share();

.withText(“hello”)里面填写你要分享的内容就好了

2)图片分享

private UMImage imageurl,imagelocal; 图片推荐资源图片和网络图片

imageurl = new UMImage(this,图片url);

imageurl.setThumb(new UMImage(this, R.drawable.thumb));

// imagelocal = new UMImage(this,R.drawable.logo,umImageMark);

imagelocal = new UMImage(this,R.drawable.logo);

imagelocal.setThumb(new UMImage(this, R.drawable.thumb));

new ShareAction(ShareDetailActivity.this).withMedia(imagelocal )

.setPlatform(share_media)

.setCallback(shareListener).share();

如果是本地图片就用withMedia(imagelocal ),网络图片withMedia(imageurl )

一般会设置缩略图

UMImage thumb = new UMImage(this, R.drawable.thumb);

imagelocal .setThumb(thumb);

ps:设置图片位置

UMImageMark umImageMark = new UMImageMark();

umImageMark.setGravity(Gravity.BOTTOM | Gravity.RIGHT);

umImageMark.setMarkBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.umsocial_defaultwatermark));

``

当然图片资源还有

UMImage image = new UMImage(ShareActivity.this, “imageurl”);//网络图片

UMImage image = new UMImage(ShareActivity.this, file);//本地文件

UMImage image = new UMImage(ShareActivity.this, R.drawable.xxx);//资源文件

UMImage image = new UMImage(ShareActivity.this, bitmap);//bitmap文件

UMImage image = new UMImage(ShareActivity.this, byte[]);//字节流

new ShareAction(ShareDetailActivity.this).withText(Defaultcontent.text)

.withMedia(imagelocal)

.setPlatform(share_media)

.setCallback(shareListener).share();

4)图文加链接

UMWeb web = new UMWeb(Defaultcontent.url);

web.setTitle(“This is music title”);//标题

web.setThumb(thumb); //缩略图,可以本地图片,也可以网络图片

web.setDescription(“my description”);//描述

然后调用将这个参数设置到ShareAction中:

new ShareAction(ShareActivity.this)

.withMedia(web)

.share();

5)视频分享

视频只能使用网络视频:

UMVideo video = new UMVideo(videourl);

video.setTitle(“This is music title”);//视频的标题

video.setThumb(“http://www.umeng.com/images/pic/social/chart_1.png”);//视频的缩略图

video.setDescription(“my description”);//视频的描述

建立好之后可以进行分享:

new ShareAction(ShareActivity.this).withText(“hello”).withMedia(video).share();

6)音乐分享

音乐只能使用网络音乐:

UMusic music = new UMusic(musicurl);//音乐的播放链接

music.setTitle(“This is music title”);//音乐的标题

music.setThumb(“http://www.umeng.com/images/pic/social/chart_1.png”);//音乐的缩略图

music.setDescription(“my description”);//音乐的描述

music.setmTargetUrl(Defaultcontent.url);//音乐的跳转链接

建立好之后可以进行分享:

new ShareAction(ShareActivity.this)

.withMedia(music)

.share();

7)gif

目前只有微信好友分享支持Emoji表情,其他平台暂不支持

UMEmoji emoji = new UMEmoji(this,“http://img5.imgtn.bdimg.com/it/u=2749190246,3857616763&fm=21&gp=0.jpg”);

emoji.setThumb(new UMImage(this, R.drawable.thumb));

new ShareAction(ShareActivity.this)

.withMedia(emoji)

.share();

8)微信小程序

目前只有微信好友支持小程序分享,朋友圈,收藏及其他平台暂不支持:

UMMin umMin = new UMMin(Defaultcontent.url);

umMin.setThumb(imagelocal);

umMin.setTitle(Defaultcontent.title);

umMin.setDescription(Defaultcontent.text);

umMin.setPath(“pages/page10007/xxxxxx”);

umMin.setUserName(“xx_xxx”);

new ShareAction(ShareDetailActivity.this)

.withMedia(umMin)

.setPlatform(share_media)

.setCallback(shareListener)

.share();

emoji = new UMEmoji(this,”http://img5.imgtn.bdimg.com/it/u=2749190246,3857616763&fm=21&gp=0.jpg“);

emoji.setThumb(new UMImage(this, R.drawable.thumb));

9)分享文件

new ShareAction(ShareDetailActivity.this)

.withFile(file)

.withText(Defaultcontent.text)

.withSubject(Defaultcontent.title)

.setPlatform(share_media)

.setCallback(shareListener).share();

file = new File(this.getFilesDir()+“test.txt”);

if (!file.exists()){

try {

file.createNewFile();

} catch (IOException e) {

e.printStackTrace();

}

}

if (SocializeUtils.File2byte(file).length<=0){

String content = “U-share分享”;

byte[] contentInBytes = content.getBytes();

try {

FileOutputStream fop = new FileOutputStream(file);

fop.write(contentInBytes);

fop.flush();

fop.close();

} catch (FileNotFoundException e) {

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip204888 (备注Android)
img

最后

最后为了帮助大家深刻理解Android相关知识点的原理以及面试相关知识,这里放上相关的我搜集整理的24套腾讯、字节跳动、阿里、百度2019-2021BAT 面试真题解析,我把大厂面试中常被问到的技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。

还有 高级架构技术进阶脑图 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

Android 基础知识点

Java 基础知识点

Android 源码相关分析

常见的一些原理性问题

希望大家在今年一切顺利,进到自己想进的公司,共勉!

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
img
试真题解析**,我把大厂面试中常被问到的技术点整理成了视频和PDF(实际上比预期多花了不少精力),包知识脉络 + 诸多细节。

还有 高级架构技术进阶脑图 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。

Android 基础知识点

Java 基础知识点

Android 源码相关分析

常见的一些原理性问题

[外链图片转存中…(img-SmLVuay8-1712677014698)]

希望大家在今年一切顺利,进到自己想进的公司,共勉!

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-hcfGl7qo-1712677014698)]

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐