コード例 #1
0
  public void onClick(View v) {
    Platform plat = (Platform) v.getTag();
    if (plat != null) {
      if (silent) {
        HashMap<Platform, HashMap<String, Object>> shareData =
            new HashMap<Platform, HashMap<String, Object>>();
        shareData.put(plat, reqData);
        parent.share(shareData);
        return;
      }

      String name = plat.getName();
      parent.setPlatform(name);
      // EditPage不支持微信平台、Google+、QQ分享、信息和邮件,总是执行直接分享
      if ("Wechat".equals(name)
          || "WechatMoments".equals(name)
          || "ShortMessage".equals(name)
          || "Email".equals(name)
          || "GooglePlus".equals(name)
          || "QQ".equals(name)) {
        HashMap<Platform, HashMap<String, Object>> shareData =
            new HashMap<Platform, HashMap<String, Object>>();
        shareData.put(plat, reqData);
        parent.share(shareData);
        return;
      }

      // 跳转SharePage分享
      EditPage page = new EditPage();
      page.setShareData(reqData);
      page.setParent(parent);
      page.show(parent.getContext(), null);
      parent.finish();
    }
  }
コード例 #2
0
  private void showShare(boolean silent, String platform, boolean captureView) {
    final OnekeyShare oks = new OnekeyShare();
    // 分享时Notification的图标和文字
    oks.setNotification(R.drawable.ic_launcher, "VGroup");
    // title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用
    oks.setTitle("VGroup");
    // titleUrl是标题的网络链接,仅在人人网和QQ空间使用
    oks.setTitleUrl(FinalUrl.PLAYVIDEO_URL + filenameString);
    // text是分享文本,所有平台都需要这个字段
    oks.setText("我用VGroup分享了视频." + FinalUrl.PLAYVIDEO_URL + filenameString);
    // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
    // oks.setImagePath("123");
    // oks.setImageUrl(FinalUrl.VIDEOIMAGE_URL+imagenameString);

    // url仅在微信(包括好友和朋友圈)中使用
    oks.setUrl(FinalUrl.PLAYVIDEO_URL + filenameString);
    // comment是我对这条分享的评论,仅在人人网和QQ空间使用
    oks.setComment("我用VGroup分享了视频.");
    // site是分享此内容的网站名称,仅在QQ空间使用
    oks.setSite("VGroup");
    // siteUrl是分享此内容的网站地址,仅在QQ空间使用
    oks.setSiteUrl("http://www.baidu.com");
    oks.setLatitude(23.056081f);
    oks.setLongitude(113.385708f);
    oks.setSilent(silent);
    if (platform != null) {
      oks.setPlatform(platform);
    }
    oks.setDialogMode();
    // 取消自动授权
    oks.disableSSOWhenAuthorize();
    // 隐藏客户端
    oks.setShareContentCustomizeCallback(new ShareContentCustomizeDemo());
    oks.show(SubmitActivity.this);
  }
コード例 #3
0
  /**
   * 调用分享页面,即弹出分享平台选择对话框
   *
   * @author Felix
   */
  public void share() {
    oks = new OnekeyShare();
    oks.setShareContentCustomizeCallback(
        new ShareContentCustomizeCallback() {

          @Override
          public void onShare(Platform platform, ShareParams paramsToShare) {
            if (link != null
                && (platform.getName().equals("SinaWeibo")
                    || platform.getName().equals("TencentWeibo"))) paramsToShare.text += " " + link;
          }
        });
    oks.setNotification(icon, "正在分享...");
    oks.setSilent(!canEdit);
    oks.setImagePath(imagePath);
    oks.setText(text);
    oks.setTitle(title);

    oks.setUrl(link); // 微信两个平台用
    oks.setTitleUrl(link); // QQ空间专属参数,标题链接地址
    oks.setSite(sizeName); // QQ空间专属参数,来自xxx的“xxx”
    oks.setSiteUrl(sizeUrl); // QQ空间专属参数,“来自xxx”的点击跳转地址

    // oks.setAppName(appName);//QQ分享的专属参数
    if (platForm != null) {
      oks.setPlatform(platForm);
    }

    oks.show(context);
  }
コード例 #4
0
  @JavascriptInterface
  public void share(String platform) {
    String url = BYBlog.HOMEURL + "?p=" + postid;
    ShareSDK.initSDK(getActivity());
    OnekeyShare oks = new OnekeyShare();
    oks.disableSSOWhenAuthorize();
    oks.setTitle(SinglePostActivity.shareTitle);
    // titleUrl是标题的网络链接,仅在人人网和QQ空间使用
    oks.setTitleUrl(url);
    // text是分享文本,所有平台都需要这个字段
    oks.setText(SinglePostActivity.shareContent);
    // imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
    oks.setImagePath(
        Environment.getExternalStorageDirectory() + "/BYBlog/test.jpg"); // 确保SDcard下面存在此张图片
    // url仅在微信(包括好友和朋友圈)中使用
    oks.setUrl(url);
    // comment是我对这条分享的评论,仅在人人网和QQ空间使用
    oks.setComment("我想说两句!");
    // site是分享此内容的网站名称,仅在QQ空间使用
    oks.setSite(getString(R.string.app_name));
    // siteUrl是分享此内容的网站地址,仅在QQ空间使用
    oks.setSiteUrl(url);

    switch (platform) {
      case "weibo":
        oks.setPlatform(SinaWeibo.NAME);
        break;
      case "qq":
        oks.setPlatform(QQ.NAME);
        break;
      case "weixin":
        oks.setPlatform(Wechat.NAME);

        break;
      case "pyq":
        oks.setPlatform(WechatMoments.NAME);
        break;
    }
    // 启动分享GUI
    oks.show(getActivity());
  }