友盟分享设置

官方文档 :开发者中心

U-Share为开发者提供了不同种类的分享样式,分享目前支持的类型有:

分享样式支持

U-Share为开发者提供了不同种类的分享样式,分享目前支持的类型有:

  • 网页链接(网页H5链接)

  • 小程序(包括微信小程序和QQ小程序两种)

  • 图片

  • 纯文本

  • 多图(多图要包含文字描述)

  • 视频

  • 音乐

  • 表情(GIF图片,即Emotion类型,只有微信支持)

  • 图片视频混合(仅抖音)

以下是不同分享样式的具体实现代码:

分享网页链接

分享网页链接可以使用UMWeb进行分享:

javascript 复制代码
UMWeb  web =newUMWeb(Defaultcontent.url);
        web.setTitle("This is music title");//标题
        web.setThumb(thumb);//缩略图
        web.setDescription("my description");//描述

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

复制代码
newShareAction(ShareActivity.this)
.withMedia(web)
.share();

重要

集成U-Share能够实现从App分享H5页面到微信/QQ等平台,如想实现从微信等回流到App,统计分享带来了多少的新老用户以及自动绑定邀请关系,请集成U-Link产品,可在U-Share产品后台查看分享回流次数、分享新增用户等指标。

分享小程序

小程序类型支持分享微信小程序和QQ小程序,其中微信小程序只支持分享到微信好友。朋友圈,微信收藏暂不支持,以下是微信小程序分享代码:

复制代码
UMMin umMin =newUMMin(Defaultcontent.url);
//兼容低版本的网页链接
umMin.setThumb(imagelocal);
// 小程序消息封面图片
umMin.setTitle(Defaultcontent.title);
// 小程序消息title
umMin.setDescription(Defaultcontent.text);
// 小程序消息描述
umMin.setPath("pages/page10007/xxxxxx");
//小程序页面路径
umMin.setUserName("gh_xxxxxxxxxxxx");
// 小程序原始id,在微信平台查询
newShareAction(ShareDetailActivity.this)
.withMedia(umMin)
.setPlatform(share_media)
.setCallback(shareListener).share();

以下是QQ小程序分享代码:

复制代码
// QQ小程序分享样例代码,位于官方Demo工程 ShareDetailActivity.java中
publicvoid shareQQMiniApp(){
UMQQMini qqMini =newUMQQMini(Defaultcontent.url);
        qqMini.setThumb(newUMImage(this,Defaultcontent.imageurl));// 缩略图支持网络图片和本地图片
        qqMini.setTitle(Defaultcontent.title);
        qqMini.setDescription(Defaultcontent.text);
        qqMini.setMiniAppId("1110429485");
        qqMini.setPath("pages/index/index");
newShareAction(ShareDetailActivity.this)
.withMedia(qqMini)
.setPlatform(share_media)
.setCallback(shareListener).share();
}

分享图片

在使用ShareAction的时候,调用withMedia可以设置一个UMImage(图片分享),UMImage的构建有如下几种形式

复制代码
UMImage image =newUMImage(ShareActivity.this,"imageurl");//网络图片
UMImage image =newUMImage(ShareActivity.this, file);//本地文件
UMImage image =newUMImage(ShareActivity.this, R.drawable.xxx);//资源文件
UMImage image =newUMImage(ShareActivity.this, bitmap);//bitmap文件
UMImage image =newUMImage(ShareActivity.this,byte[]);//字节流

推荐使用网络图片和资源文件的方式,平台兼容性更高。对于部分平台,分享的图片需要设置缩略图,缩略图的设置规则为:

复制代码
UMImage thumb =newUMImage(this, R.drawable.thumb);
image.setThumb(thumb);

用户设置的图片大小最好不要超过250k,缩略图不要超过18k,如果超过太多(最好不要分享1M以上的图片,压缩效率会很低),图片会被压缩。用户可以设置压缩的方式:

复制代码
image.compressStyle =UMImage.CompressStyle.SCALE;//大小压缩,默认为大小压缩,适合普通很大的图
image.compressStyle =UMImage.CompressStyle.QUALITY;//质量压缩,适合长图的分享
压缩格式设置
image.compressFormat =Bitmap.CompressFormat.PNG;//用户分享透明背景的图片可以设置这种方式,但是qq好友,微信朋友圈,不支持透明背景图片,会变成黑色

创建好UMImage之后调用分享即可,如下所示:

复制代码
newShareAction(ShareActivity.this).withText("hello").withMedia(image).share();

U-Share从v7.2.2 SDK后支持调用系统分享能力实现分享图片到微信功能,详情见下文

官方文档:开发者中心

相关推荐
千里马学框架5 天前
一起学 Android 14:ShellTransition 屏幕旋转过程深度剖析
android·智能手机·性能优化·framework·性能·屏幕旋转·rotation
美狐美颜SDK开放平台5 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
AFinalStone5 天前
Android7 SystemUI源码解析(七)Keyguard锁屏模块深度解析
android·systemui
致远ccc5 天前
Google Play 上架前如何测试 App?多国家 Android 环境测试
android·app测试·googleplay·多国家应用测试
ttyyttemo5 天前
Kotlin 协程中的 Job 结构化并发与取消
android
sun0077006 天前
tbox 4g/5g切换,导致wan ip 改变,导致车机旧网络不可用。需要重启车机才行
android
其实防守也摸鱼6 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
AFinalStone6 天前
Android7 SystemUI 源码解析(四)NavigationBar 导航栏与 SystemBars
android·systemui
JMchen6 天前
属性动画原理与高级动画实现
android·kotlin·canvas
AFinalStone6 天前
Android7 SystemUI 源码解析(二)启动流程深度解析
android·systemui