Skip to content

Android分享SDK接入指南

WARNING

游戏层接入U8SDK分享插件接口后,需要通过打包工具打入具体的分享插件SDK,才能调出分享界面。

目前支持的分享插件SDK如下:

插件SDK名称SDK目录
友盟分享umshare

基础SDK配置

分享插件接入,依赖U8聚合SDK。 如果还没有按U8聚合SDK接入文档进行配置,请先接入U8SDK

分享API的调用,通过com.u8.sdk.plugin.U8Share来调用。

分享

调用分享接口:

java

ShareParams shareParams = new ShareParams();
shareParams.setTitle("分享标题");
shareParams.setContent("分享内容");
shareParams.setImgUrl("图片URL链接");
shareParams.setUrl("分享链接");
shareParams.setVideoUrl("分享视频链接");
U8Share.getInstance().share(shareParams);

ShareParams参数内容:

参数名称参数类型参数说明
titleString分享的标题
contentString分享的内容
imgUrlString如果分享图片,不要指定url和videoUrl
urlString分享的URL,同时指定url和imgUrl,则为分享url,imgUrl作为缩略图展示
videoUrlString分享的视频URL,同时指定videoUrl和imgUrl,则为分享视频,imgUrl作为缩略图展示

常见问题

💡 问题的由来:

我们在接入友盟聚合分享SDK或其他分享SDK时,可能会遇到下面这个问题: 微信分享SDK的冲突。

当我们接入的渠道SDK中含有微信登录,比如官网SDK、应用宝YSDK等,就存在和微信分享SDK冲突的问题:

😠 微信登录SDK,依赖一个回调类:; 😠 微信分享SDK,也同样如此。

一般微信登录SDK存在于渠道SDK(比如官网SDK、应用宝YSDK等)中,而微信分享SDK存在于分享插件SDK(比如友盟分享)中,导致冲突。

✅ 解决方案:

1、解决方案一: 对于官网SDK,我们可以合并WXEntryActivity逻辑,并在打包工具中增加参数配置当前使用的WXEntryActivity实现。 打包时由打包工具将最终AndroidManifest.xml中的WXEntryActivity的activity-alias指向对应的实现类。

以下是详细说明:

比如在友盟分享插件SDK中,我们实现了两个WXEntryActivity的实现类,一个是com.u8.sdk.umeng.WXEntryActivityJustForUMeng,另一个是com.u8.sdk.umeng.WXEntryActivityForXSDK。 如果当前打包渠道是官网SDK,我们在打包工具->插件面板中,将友盟分享插件的微信回调类设置为WXEntryActivityForXSDK,其他没有微信登录SDK的渠道,我们将微信回调类设置为WXEntryActivityJustForUMeng

分享插件配置

2、解决方案二:对于应用宝YSDK,它也有自己的分享API可以调用,我们可以在应用宝的渠道SDK接入工程中,加入分享接口的实现,并在打包工具应用宝渠道中不开启友盟分享插件即可。

版权所有© 2021-2030 上海丞诺网络科技有限公司