【友盟+】开发者社区

如何实现不同分享平台分享不同的内容

半夏 发表于 2017-6-30 14:25:43 | |阅读模式

半夏
半夏 发表于 2017-6-30 14:25:43 | 显示全部楼层 |阅读模式


在使用UShare默认提供的分享面板选择页时,通常来说所有平台的内容都是预设好的一套内容(包含文本、图片、链接等),但有一部分开发者需要设置不同的内容,比如针对短信平台使用文本类型,其他平台使用链接类型,或者是微信平台和新浪平台使用不同的文本内容等等,这种需求可以统一使用ShareBoardlistener这个监听器来实现,通过监听回调来判断平台,进而分别设置不同的内容,代码参考如下:

[Java] 纯文本查看 复制代码
mShareAction = new ShareAction(ShareMenuActivity.this).setDisplayList(
                SHARE_MEDIA.WEIXIN,
                SHARE_MEDIA.SINA, SHARE_MEDIA.QQ, SHARE_MEDIA.QZONE,
                SHARE_MEDIA.ALIPAY, SHARE_MEDIA.RENREN, SHARE_MEDIA.DOUBAN,
                SHARE_MEDIA.SMS, SHARE_MEDIA.MORE)
                .addButton("umeng_sharebutton_copy", "umeng_sharebutton_copy", "umeng_socialize_copy", "umeng_socialize_copy")
                .addButton("umeng_sharebutton_copyurl", "umeng_sharebutton_copyurl", "umeng_socialize_copyurl", "umeng_socialize_copyurl")
                .setShareboardclickCallback(new ShareBoardlistener() {
                    @Override
                    public void onclick(SnsPlatform snsPlatform, SHARE_MEDIA share_media) {
                        if (snsPlatform.mShowWord.equals("umeng_sharebutton_copy")) {
                            Toast.makeText(ShareMenuActivity.this, "复制文本按钮", Toast.LENGTH_LONG).show();
                        } else if (snsPlatform.mShowWord.equals("umeng_sharebutton_copyurl")) {
                            Toast.makeText(ShareMenuActivity.this, "复制链接按钮", Toast.LENGTH_LONG).show();

                        }else if(share_media == SHARE_MEDIA.SMS) {
                            new ShareAction(ShareMenuActivity.this).withText("来自分享面板标题")
                                .setPlatform(share_media)
                                .setCallback(mShareListener)
                                .share();
                        }else
                         {
                            UMWeb web = new UMWeb(Defaultcontent.url);
                            web.setTitle("来自分享面板标题");
                            web.setDescription("来自分享面板内容");
                            web.setThumb(new UMImage(ShareMenuActivity.this, R.drawable.logo));
                            new ShareAction(ShareMenuActivity.this).withMedia(web)
                                    .setPlatform(share_media)
                                    .setCallback(mShareListener)
                                    .share();
                        }
                    }
                });


在这段代码里,通过面板监听器,判断短信平台,设置为文本内容,其他平台仍然采用默认的web类型



上一篇:友盟分享和推送支持国外吗?
下一篇:iOS 友盟三方登录微信.有时得到的token 是null

您需要登录后才可以发帖 登录 | 立即注册

本版积分规则

发表主题

精彩推荐

Xcode9 beat2 编译出错
今天安装了Xcode9 beat2 版本,感觉还不错,就兴冲冲的去编译公司项目,然后发现悲了个催了 ,,编译不通
6.4.5版本sdk,新浪分享内存泄漏
新浪分享的时候,sdk内部持有了Activity造成了内存泄漏
iOS 分享word文件到微信
1. 有个需求是下载网络上的word文件,并分享到微信好友,结果分享出来的不正确。 有指教的吗。。。。

关注我们

新浪微博
微信

欢迎关注友盟官方微博微信!

在线客服
返回顶部 返回列表