一键分享
主要注意的就是

 public void shareMsg(String name,String title,String url) {        Bitmap logo = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);        OnekeyShare oks = new OnekeyShare();        //隐藏QQ平台//        oks.addHiddenPlatform(QQ.NAME);        //关闭sso授权        oks.disableSSOWhenAuthorize();        // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用        oks.setTitle(name);        // titleUrl是标题的网络链接,仅在人人网和QQ空间使用        oks.setTitleUrl(url);        // text是分享文本,所有平台都需要这个字段        oks.setText(title);        // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数,        // 使用 imagePath 必须保证SDcard下面存在此张图片        //imagePath,imageUrl 必须保留一个,否则微信不能分享,或者分享过去的图片都是应用的 logo//        oks.setImageUrl(Urls.BASE_URL + entity.pic);        oks.setImageData(logo);        // url仅在微信(包括好友和朋友圈)中使用        oks.setUrl(url);        // comment是我对这条分享的评论,仅在人人网和QQ空间使用        oks.setComment(title);        // site是分享此内容的网站名称,仅在QQ空间使用        oks.setSite(name);        // siteUrl是分享此内容的网站地址,仅在QQ空间使用        oks.setSiteUrl(url);    //去除分享正在后台的提示        oks.setDisappearShareToast(true);        oks.setShareContentCustomizeCallback(new ShareContentCustomizeCallback() {            @Override            public void onShare(Platform platform, cn.sharesdk.framework.Platform.ShareParams paramsToShare) {                if (Wechat.NAME.equals(platform.getName())) {                    paramsToShare.setShareType(Platform.SHARE_WEBPAGE);                    paramsToShare.setTitle(name);                    paramsToShare.setTitleUrl(url);                    paramsToShare.setText(title);                    paramsToShare.setUrl(url);                    paramsToShare.setImageData(logo);                }                if (QQ.NAME.equals(platform.getName())) {                    paramsToShare.setTitle(name);                    paramsToShare.setTitleUrl(url);                    paramsToShare.setText(title);                    paramsToShare.setUrl(url);                    paramsToShare.setImageData(logo);                }            }        });            oks.setCallback(new PlatformActionListener() {            @Override            public void onComplete(Platform platform, int i, HashMap<String, Object> hashMap) {                // TODO 分享成功后的操作或者提示                Log.d("share","onComplete");            }            @Override            public void onError(Platform platform, int i, Throwable throwable) {                // TODO 失败,打印throwable为错误码                Log.d("share","onError");            }            @Override            public void onCancel(Platform platform, int i) {                // TODO 分享取消操作                Log.d("share","onCancel");            }        });        //启动分享GUI        oks.show(MobSDK.getContext());    }

指定平台分享

 private void sharePlatform(String name,String titleContent,String url){       Bitmap logo = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);        Platform.ShareParams sp = new Platform.ShareParams();        sp.setTitle(name);        sp.setTitleUrl(url); // 标题的超链接        sp.setText(titleContent);//        sp.setImageUrl("http://www.someserver.com/测试图片网络地址.jpg");        sp.setImageData(logo);        sp.setSite(name);        sp.setShareType(Platform.SHARE_WEBPAGE);        sp.setUrl(url); // 标题的超链接        sp.setSiteUrl(url);        Platform qzone = ShareSDK.getPlatform (Wechat.NAME);// 设置分享事件回调(注:回调放在不能保证在主线程调用,不可以在里面直接处理UI操作)        qzone.setPlatformActionListener (new PlatformActionListener() {            public void onError(Platform arg0, int arg1, Throwable arg2) {                //失败的回调,arg:平台对象,arg1:表示当前的动作,arg2:异常信息                Log.d("share","onError");            }            public void onComplete(Platform arg0, int arg1, HashMap arg2) {                //分享成功的回调                Log.d("share","onComplete");            }            public void onCancel(Platform arg0, int arg1) {                //取消分享的回调                Log.d("share","onCancel");            }        });// 执行图文分享        qzone.share(sp);    }

注意事项
指定平台分享要注意分享的Type类型,比如这里使用的是Platform.SHARE_WEBPAGE类型
sp.setUrl(url);就不能缺少

    sp.setShareType(Platform.SHARE_WEBPAGE);

//imagePath,imageUrl 必须保留一个,否则微信不能分享,或者分享过去的图片都是应用的 logo
其次分享微信的时候主要签名这些基本要求要对应上

//去除分享正在后台的提示
oks.setDisappearShareToast(true);

//隐藏QQ平台
// oks.addHiddenPlatform(QQ.NAME);

更多相关文章

  1. 箭头函数的基础使用
  2. NPM 和webpack 的基础使用
  3. Python list sort方法的具体使用
  4. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
  5. android 使用html5作布局文件: webview跟javascript交互
  6. Android(安卓)Resource介绍和使用
  7. "Failed to fetch URL https://dl-ssl.google.com/android/repos
  8. 使用NetBeans搭建Android开发环境
  9. Android平台上优秀的开源项目

随机推荐

  1. Android之ListView中的分割线和行高
  2. Android 中文 API (28) —— CheckedTextVi
  3. Android 混淆提示 java.io.FileNotFoundE
  4. 修改android studio 新建项目的build.gra
  5. Android ScrollView用法
  6. Android SDK代理服务器解决国内不能更新
  7. Android的CheckBox控件的点击效果布局文
  8. android 状态栏提醒 Notification 的使用
  9. android自定义滚动条(ScrollBar)样式
  10. 通过gae访问android官方文档