友盟分享设置

官方文档开发者中心

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后支持调用系统分享能力实现分享图片到微信功能,详情见下文

官方文档:开发者中心

相关推荐
安卓理事人9 小时前
安卓LinkedBlockingQueue消息队列
android
万能的小裴同学10 小时前
Android M3U8视频播放器
android·音视频
q***577411 小时前
MySql的慢查询(慢日志)
android·mysql·adb
JavaNoober11 小时前
Android 前台服务 "Bad Notification" 崩溃机制分析文档
android
城东米粉儿12 小时前
关于ObjectAnimator
android
zhangphil13 小时前
Android渲染线程Render Thread的RenderNode与DisplayList,引用Bitmap及Open GL纹理上传GPU
android
火柴就是我14 小时前
从头写一个自己的app
android·前端·flutter
lichong95115 小时前
XLog debug 开启打印日志,release 关闭打印日志
android·java·前端
用户693717500138415 小时前
14.Kotlin 类:类的形态(一):抽象类 (Abstract Class)
android·后端·kotlin
火柴就是我15 小时前
NekoBoxForAndroid 编译libcore.aar
android