这里只写了单独分享微信好友和朋友圈,短信等 其他平台自行添加
public class MobShareUtils {
/**
* MobShare分享工具类
* @param context 当前Activity
* @param title 分享的标题
* @param text 分享的文本
* @param imageUrl 分享的图片url(此链接必须能正常打开)
* @param url 分享的超链接
* @param platform 分享的平台 传入参数为 1. 微信好友 2. 微信朋友圈 3. 短信 4. 如果为空则采用九宫格公共分享 5.其他平台后续添加
*/
public static void showShare(final Activity context, final String title, final String text, String imageUrl, final String url, String platform) {
ShareSDK.initSDK(context);
OnekeyShare oks = new OnekeyShare();
final String imageUrl1 = TextUtils.isEmpty(imageUrl) ? "分享图片的有效地址" : imageUrl;
final String shareUrl = url.replace("amp;", "");
final String shareTitle = title;
final String shareText = text;
oks.setImageUrl(imageUrl1);
oks.setUrl(shareUrl);
oks.setText(shareText);
oks.setTitle(shareTitle);
if (!TextUtils.isEmpty(platform)&&"微信好友".equals(platform)){
oks.setPlatform(Wechat.NAME);
}else if (!TextUtils.isEmpty(platform)&&"微信朋友圈".equals(platform)){
oks.setPlatform(WechatMoments.NAME);
}else if (!TextUtils.isEmpty(platform)&&"短信".equals(platform)){
oks.setPlatform(ShortMessage.NAME);
}
oks.setShareContentCustomizeCallback(new ShareContentCustomizeCallback() {
@Override
public void onShare(Platform platform, Platform.ShareParams paramsToShare) {
if ("ShortMessage".equals(platform.getName())) {
paramsToShare.setTitle(null);
paramsToShare.setUrl(null);
paramsToShare.setImageUrl(null);
paramsToShare.setText(shareText);
}
if ("Wechat".equals(platform.getName())) {
paramsToShare.setTitle(shareTitle);
paramsToShare.setUrl(shareUrl);
paramsToShare.setImageUrl(imageUrl1);
paramsToShare.setText(shareText);
}
if ("WechatMoments".equals(platform.getName())) {
paramsToShare.setTitle(shareTitle);
paramsToShare.setUrl(shareUrl);
paramsToShare.setImageUrl(imageUrl1);
paramsToShare.setText(shareText);
}
}
});
oks.setCallback(new PlatformActionListener() {
@Override
public void onError(Platform arg0, int arg1, Throwable arg2) {
Toast.makeText(context, "分享失败", Toast.LENGTH_SHORT).show();
}
@Override
public void onComplete(Platform platform, int arg1,
HashMap<String, Object> arg2) {
Toast.makeText(context, "分享成功", Toast.LENGTH_SHORT).show();
}
@Override
public void onCancel(Platform arg0, int arg1) {
Toast.makeText(context, "分享取消", Toast.LENGTH_SHORT).show();
}
});
oks.show(context);
}
安卓开发 交流群 : 595856941