sharesdk很容易集成社会化分享。但是一般都是直接弹出popupwindow进行选择分享,集成请看集成sharesdk分享短信第三方登录等
这里要记录下如何进行分享到指定平台,是在集成环境的基础下的。
首先一点要初始化 ShareSDK.initSDK(this);//初始化社会化分享
private static final int WX_SHARE = 0;
private static final int WX_CIRCLE_SHARE = 1;
private PlatformActionListener platformActionListener = new PlatformActionListener() {
@Override
public void onComplete(Platform platform, int i, HashMap<String, Object> hashMap) {
ToastUitls.getToast(BackToShareActivity.this, "成功" + platform.getName());
}
@Override
public void onError(Platform platform, int i, Throwable throwable) {
ToastUitls.getToast(BackToShareActivity.this, "错误" + platform.getName());
}
@Override
public void onCancel(Platform platform, int i) {
ToastUitls.getToast(BackToShareActivity.this, "取消" + platform.getName());
}
};
private void showShare(int type) {
if (shareModel == null) {
return;
}
switch (type) {
case WX_SHARE:
//通过 Platform.ShareParams来获取分享平台
Platform.ShareParams wechat = new Platform.ShareParams();
//这个一定要写,分享的内容形式。。。网页
wechat.setShareType(Platform.SHARE_WEBPAGE)
//设置分享的标题
wechat.setTitle(shareModel.content);
//分享的文本
wechat.setText(shareModel.name);
//url
wechat.setUrl(shareModel.linkUrl);
//图片
wechat.setImageUrl(shareModel.picture);
Platform weixin = ShareSDK.getPlatform(BackToShareActivity.this,
Wechat.NAME);
if (!weixin.isClientValid()) {
//如果没有安装微信客户端,则提醒用户安装
Toast.makeText(BackToShareActivity.this,
"微信未安装,请先安装微信",
Toast.LENGTH_LONG).show();
}
weixin.setPlatformActionListener(platformActionListener);
weixin.share(wechat);
break;
case WX_CIRCLE_SHARE:
Platform.ShareParams wechatMoments = new Platform.ShareParams();
wechatMoments.setShareType(Platform.SHARE_WEBPAGE);
wechatMoments.setTitle(shareModel.content);
wechatMoments.setText(shareModel.name);
wechatMoments.setUrl(shareModel.linkUrl);
wechatMoments.setImageUrl(shareModel.picture);
Platform weixinMoments = ShareSDK.getPlatform(BackToShareActivity.this,
WechatMoments.NAME);
if (!weixinMoments.isClientValid()) {
Toast.makeText(BackToShareActivity.this,
"微信未安装,请先安装微信",
Toast.LENGTH_LONG).show();
}
weixinMoments.setPlatformActionListener(platformActionListener);
weixinMoments.share(wechatMoments);
break;
}
}