友盟分享的两种方式

不带面板的链接分享

 

UMImage thumb = new UMImage(MyTest.this, R.mipmap.app_logo);
                //分享链接
                UMWeb web = new UMWeb("http:/");
                web.setTitle("欢迎注册");//标题
                web.setThumb(thumb);  //缩略图
                web.setDescription("欢迎注册);//描述
//                UMImage umImage = new UMImage(MyTest.this, R.mipmap.ic_launcher);
                new ShareAction(MyTest.this)
                        .setPlatform(SHARE_MEDIA.WEIXIN)//传入平台
                        .withMedia(web)//分享内容
//                        .withMedia(umImage)
                        .setCallback(umShareListener)//回调监听器
                        .share();
            }

 

//⑧分享的监听
UMShareListener   umShareListener = new UMShareListener() {
    @Override
    public void onStart(SHARE_MEDIA share_media) {
        Log.e("onStart", "onStart");
    }

    @Override
    public void onResult(SHARE_MEDIA share_media) {
        Log.e("onResult", "onResult");
    }

    @Override
    public void onError(SHARE_MEDIA share_media, Throwable throwable) {
        Log.e("onError", "onError");
    }

    @Override
    public void onCancel(SHARE_MEDIA share_media) {
        Log.e("onCancel", "onCancel");
    }
};
//一定要加
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
}

 

带面板的分享

//分享的方法
public void shareMehtod() {

    new ShareAction(MyTest.this)
            .setDisplayList(SHARE_MEDIA.WEIXIN, SHARE_MEDIA.WEIXIN_CIRCLE, SHARE_MEDIA.QQ, SHARE_MEDIA.QZONE)
            //分享平台
            .addButton("复制链接","umeng_sharebutton_custom","umeng_socialize_copyurl","复制链接")
            // 分享面板添加自定义按钮
            .setShareboardclickCallback(shareBoardlistener)
            //面板点击监听器
            .open();
}



//分享的监听
private ShareBoardlistener shareBoardlistener = new  ShareBoardlistener() {

    @Override
    public void onclick(SnsPlatform snsPlatform, SHARE_MEDIA share_media) {
        if (share_media==null){
            //根据key来区分自定义按钮的类型,并进行对应的操作
            if (snsPlatform.mKeyword.equals("umeng_sharebutton_custom")){
                //点击后复制微信号的逻辑
                ClipboardManager cm = (ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
                // 将文本内容放到系统剪贴板里。
                cm.setText("");
                T.showShort("链接已复制成功");
            }

        }
        else {//社交平台的分享行为
            //分享的图片
            UMImage thumb = new UMImage(MyTest.this, R.mipmap.app_logo);
            //分享链接
            UMWeb web = new UMWeb("http:");
            web.setTitle("");//标题
            web.setThumb(thumb);  //缩略图
            web.setDescription("");//描述
            new ShareAction(MyTest.this)
                    .setPlatform(share_media)
                    .withText("多平台分享")
                    .withMedia(web)
                    .setCallback(new UMShareListener() {
                        @Override
                        public void onStart(SHARE_MEDIA share_media) {

                        }

                        @Override
                        public void onResult(final SHARE_MEDIA share_media) {
                            runOnUiThread(new Runnable() {
                                @Override
                                public void run() {
                                    Toast.makeText(mContext, share_media + " 分享成功", Toast.LENGTH_SHORT).show();
                                    if (share_media.name().equals("WEIXIN_FAVORITE")) {
                                    } else {
                                    }
                                }
                            });
                        }

                        @Override
                        public void onError(final SHARE_MEDIA share_media, final Throwable throwable) {
                            if (throwable != null) {
                                Log.d("throw", "throw:" + throwable.getMessage());
                            }
                            runOnUiThread(new Runnable() {
                                @Override
                                public void run() {
                                    Toast.makeText(mContext, share_media + " 分享失败", Toast.LENGTH_SHORT).show();

                                }
                            });
                        }

                        @Override
                        public void onCancel(final SHARE_MEDIA share_media) {
                            runOnUiThread(new Runnable() {
                                @Override
                                public void run() {
                                    Toast.makeText(mContext, share_media + " 分享取消", Toast.LENGTH_SHORT).show();
                                }
                            });
                        }
                    })
                    .share();
        }
    }
};
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值