Android JShare API

SDK 初始化 API

API - init

初始化接口,建议在项目的 Application 的 OnCreate 中使用。

  • SDK 1.5.0 之前的版本支持

    接口定义

    1. public static void init(Context context)

    参数说明

  • context 应用的 ApplicationContext

API - init

初始化接口,建议在项目的 Application 的 OnCreate 中使用,这个初始化API支持代码中设置第三方平台信息。

  • SDK 1.5.0 及以后版本支持

    接口定义

    1. public static void init(Context context, PlatformConfig platformConfig)

    参数说明

  • context 应用的 ApplicationContext
  • platformConfig 第三方平台信息配置,详情见第三方平台信息设置API

第三方平台信息设置 API

JShare 提供PlatformConfig类,实例化后可选择设置相应的第三方平台信息。

API - setWechat

设置微信平台信息。

接口定义

  1. public PlatformConfig setWechat(String appId, String appSecret)

参数说明

  • appId 微信平台appId
  • appSecret 微信平台appSecret

API - setQQ

设置QQ平台信息。

接口定义

  1. public PlatformConfig setQQ(String appId, String appKey)

参数说明

  • appId QQ平台appId
  • appKey QQ平台appKey

API - setSinaWeibo

设置新浪微博平台信息。

接口定义

  1. public PlatformConfig setSinaWeibo(String appKey, String appSecret, String redirectUrl)

参数说明

  • appKey 新浪微博平台appKey
  • appSecret 新浪微博平台appSecret
  • redirectUrl 新浪微博平台的回调url

API - setFacebook

设置Facebook平台信息。

接口定义

  1. public PlatformConfig setFacebook(String appId, String appName)

参数说明

  • appId Facebook平台appId
  • appName Facebook平台appName

API - setTwitter

设置Twitter平台信息。

接口定义

  1. public PlatformConfig setTwitter(String consumerKey, String consumerSecret)

参数说明

  • consumerKey Twitter平台consumerKey
  • consumerSecret Twitter平台consumerSecret

API - setJchatPro

设置 JChatpro 平台信息。

接口定义

  1. public PlatformConfig setJchatPro(String auth)

参数说明

  • auth JchatPro平台auth

获取已经正确配置的平台 API

API - getPlatformList

获取 SDK 所有能用的平台名称,如要使用某个平台,必须正确配置相应的jar以及第三方平台信息。

接口定义

  1. public static List<String> getPlatformList()

设置调试模式 API

API - setDebugMode

设置调试模式。
注:该接口需在 init 接口之前调用,避免出现部分日志没打印的情况。多进程情况下建议在自定义的 Application 中 onCreate 中调用。

接口定义

  1. public static void setDebugMode(boolean enable)

参数说明

  • enable 为 true 则会打印 debug 级别的日志,false 则只会打印 warning 级别以上的日志

判断某平台分享是否有效 API

API - isClientValid

判断该平台的分享是否有效。

接口定义

  1. public static boolean isClientValid(String name)

参数说明

  • name 平台名称,值可选 Wechat.Name、WechatMoments.Name、WechatFavorite.Name、SinaWeibo.Name、SinaWeiboMessage.Name、QQ.Name、QZone.Name、Facebook.Name、FbMessenger.Name、Twitter.Name、JChatPro.Name。

分享 API

API - share

分享接口

接口定义

  1. public static void share(String name, ShareParams shareParams, PlatActionListener shareActionListener))

参数说明

  • name 平台名称,值可选 Wechat.Name、WechatMoments.Name、WechatFavorite.Name、SinaWeibo.Name、SinaWeiboMessage.Name、QQ.Name、QZone.Name、Facebook.Name、FbMessenger.Name、Twitter.Name、JChatPro.Name。
  • shareParams 分享的配置参数,具体设置请参考各个平台的分享参数说明。
  • shareActionListener 回调接口,可为 null,为 null 时则没有回调

判断某平台是否支持授权 API

API - isSupportAuthorize

判断某平台是否支持授权

  • SDK 1.2.0 以上版本支持

    接口定义

    1. public static boolean isSupportAuthorize(String name)

    参数说明

  • name 平台名称,值可选 Wechat.Name、WechatMoments.Name、WechatFavorite.Name、SinaWeibo.Name、SinaWeiboMessage.Name、QQ.Name、QZone.Name、Facebook.Name、FbMessenger.Name、Twitter.Name。

授权 API

API - authorize

授权接口

  • SDK 1.2.0 以上版本支持

    接口定义

    1. public static void authorize(String name, AuthListener authListener)

    参数说明

  • name 平台名称,值可选 Wechat.Name、SinaWeibo.Name、QQ.Name、Facebook.Name、Twitter.Name、JChatPro.Name。
  • authListener 回调接口,可为 null,为 null 时则没有回调。

    代码示例

    1. JShareInterface.authorize(platform, new AuthListener() {
    2. @Override
    3. public void onComplete(Platform platform, int action, BaseResponseInfo data) {
    4. Logger.dd(TAG, "onComplete:" + platform + ",action:" + action + ",data:" + data);
    5. String toastMsg = null;
    6. switch (action) {
    7. case Platform.ACTION_AUTHORIZING:
    8. if (data instanceof AccessTokenInfo) { //授权信息
    9. String token = ((AccessTokenInfo) data).getToken();//token
    10. long expiration = ((AccessTokenInfo) data).getExpiresIn();//token有效时间,时间戳
    11. String refresh_token = ((AccessTokenInfo) data).getRefeshToken();//refresh_token
    12. String openid = ((AccessTokenInfo) data).getOpenid();//openid
    13. //授权原始数据,开发者可自行处理
    14. String originData = data.getOriginData();
    15. toastMsg = "授权成功:" + data.toString();
    16. Logger.dd(TAG, "openid:" + openid + ",token:" + token + ",expiration:" + expiration + ",refresh_token:" + refresh_token);
    17. Logger.dd(TAG, "originData:" + originData);
    18. }
    19. break;
    20. }
    21. }
    22. @Override
    23. public void onError(Platform platform, int action, int errorCode, Throwable error) {
    24. String toastMsg = null;
    25. switch (action) {
    26. case Platform.ACTION_AUTHORIZING:
    27. toastMsg = "授权失败";
    28. break;
    29. }
    30. }
    31. @Override
    32. public void onCancel(Platform platform, int action) {
    33. Logger.dd(TAG, "onCancel:" + platform + ",action:" + action);
    34. String toastMsg = null;
    35. switch (action) {
    36. case Platform.ACTION_AUTHORIZING:
    37. toastMsg = "取消授权";
    38. break;
    39. }
    40. }
    41. });

判断是否已经授权 API

API - isAuthorize

判断是否已经授权接口

  • SDK 1.2.0以上版本支持

    接口定义

    1. public static boolean isAuthorize(String name)

    参数说明

  • name 平台名称,值可选 Wechat.Name、WechatMoments.Name、WechatFavorite.Name、SinaWeibo.Name、SinaWeiboMessage.Name、QQ.Name、QZone.Name、Facebook.Name、FbMessenger.Name、Twitter.Name。

删除授权 API

API - removeAuthorize

删除授权接口

  • SDK 1.2.0 以上版本支持

    接口定义

    1. public static void removeAuthorize(String name, AuthListener actionListener)

    参数说明

  • name 平台名称,值可选 Wechat.Name、WechatMoments.Name、WechatFavorite.Name、SinaWeibo.Name、SinaWeiboMessage.Name、QQ.Name、QZone.Name、Facebook.Name、FbMessenger.Name、Twitter.Name。
  • authListener 回调接口,可为 null,为 null 时则没有回调

    代码示例

    1. JShareInterface.removeAuthorize(platform, new AuthListener() {
    2. @Override
    3. public void onComplete(Platform platform, int action, BaseResponseInfo data) {
    4. Logger.dd(TAG, "onComplete:" + platform + ",action:" + action + ",data:" + data);
    5. String toastMsg = null;
    6. switch (action) {
    7. case Platform.ACTION_REMOVE_AUTHORIZING:
    8. toastMsg = "删除授权成功";
    9. break;
    10. }
    11. }
    12. @Override
    13. public void onError(Platform platform, int action, int errorCode, Throwable error) {
    14. Logger.dd(TAG, "onError:" + platform + ",action:" + action + ",error:" + error);
    15. String toastMsg = null;
    16. switch (action) {
    17. case Platform.ACTION_REMOVE_AUTHORIZING:
    18. toastMsg = "删除授权失败";
    19. break;
    20. }
    21. }
    22. @Override
    23. public void onCancel(Platform platform, int i) {
    24. }
    25. });

获取个人信息 API

API - getUserInfo

获取个人信息接口

  • SDK 1.2.0 以上版本支持

    接口定义

    1. public static void getUserInfo(String platName, AuthListener authListener)

    参数说明

  • name 平台名称,值可选 Wechat.Name、WechatMoments.Name、WechatFavorite.Name、SinaWeibo.Name、SinaWeiboMessage.Name、QQ.Name、QZone.Name、Facebook.Name、FbMessenger.Name、Twitter.Name。
  • authListener 回调接口,可为 null,为 null 时则没有回调

    代码示例

    1. JShareInterface.getUserInfo(platform, new AuthListener() {
    2. @Override
    3. public void onComplete(Platform platform, int action, BaseResponseInfo data) {
    4. Logger.dd(TAG, "onComplete:" + platform + ",action:" + action + ",data:" + data);
    5. String toastMsg = null;
    6. switch (action) {
    7. case Platform.ACTION_USER_INFO:
    8. if (data instanceof UserInfo) { //第三方个人信息
    9. String openid = ((UserInfo) data).getOpenid(); //openid
    10. String name = ((UserInfo) data).getName(); //昵称
    11. String imageUrl = ((UserInfo) data).getImageUrl(); //头像url
    12. int gender = ((UserInfo) data).getGender();//性别, 1表示男性;2表示女性
    13. //个人信息原始数据,开发者可自行处理
    14. String originData = data.getOriginData();
    15. toastMsg = "获取个人信息成功:" + data.toString();
    16. Logger.dd(TAG, "openid:" + openid + ",name:" + name + ",gender:" + gender + ",imageUrl:" + imageUrl);
    17. Logger.dd(TAG, "originData:" + originData);
    18. }
    19. break;
    20. }
    21. }
    22. @Override
    23. public void onError(Platform platform, int action, int errorCode, Throwable error) {
    24. Logger.dd(TAG, "onError:" + platform + ",action:" + action + ",error:" + error);
    25. String toastMsg = null;
    26. switch (action) {
    27. case Platform.ACTION_USER_INFO:
    28. toastMsg = "获取个人信息失败";
    29. break;
    30. }
    31. }
    32. @Override
    33. public void onCancel(Platform platform, int action) {
    34. Logger.dd(TAG, "onCancel:" + platform + ",action:" + action);
    35. String toastMsg = null;
    36. switch (action) {
    37. case Platform.ACTION_USER_INFO:
    38. toastMsg = "取消获取个人信息";
    39. break;
    40. }
    41. }
    42. });

各个平台的分享参数说明

微信(包括微信朋友圈、微信收藏)

1)分享文本

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_TEXT
Text String 分享标题 不超过 10KB
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_TEXT);
  3. shareParams.setText("Text");//必须

2)分享图片

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGE
ImagePath String 本地图片路径 长度不能超过 10KB,大小不能超过 10M,ImagePath 与 ImageData 必须二选一
ImageData Bitmap 图片 Bitmap 大小不能超过1 0M,ImagePath 与 ImageData 必须二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setImagePath(file.getAbsolutePath());
  4. //shareParams.setImageData(bitmap);

3)分享音乐

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_MUSIC
Title String 音乐标题 长度不能超过 512
Text String 音乐描述 长度不能超过 1K
MusicUrl String 音乐资源 Url 点击播放按钮可直接播放 url,长度不能超过 10K
Url String 跳转 Url 点击跳转页面 url,长度不能超过 10K
ImagePath String 缩略图,本地图片路径 长度不能超过 10KB,大小不能超过 32K,与 ImageData 二选一
ImageData Bitmap 缩略图,图片 Bitmap 大小不能超过 32K,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setTitle(share_title);
  3. shareParams.setText(share_text);
  4. shareParams.setShareType(Platform.SHARE_MUSIC);
  5. shareParams.setUrl(url);
  6. shareParams.setMusicUrl(music_url);
  7. shareParams.setImagePath(file.getAbsolutePath());

4)分享视频

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_VIDEO
Title String 视频标题 长度不能超过 512
Text String 视频描述 长度不能超过 1K,朋友圈不显示该字段内容
Url String 视频Url 长度不能超过 10K
ImagePath String 缩略图,本地图片路径 长度不能超过 10KB,大小不能超过 32K,与 ImageData 二选一
ImageData Bitmap 缩略图,图片 Bitmap 大小不能超过 32K,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setTitle(share_title);
  3. shareParams.setText(share_text);
  4. shareParams.setShareType(Platform.SHARE_VIDEO);
  5. shareParams.setUrl(share_videourl);
  6. shareParams.setImagePath(file.getAbsolutePath());

5)分享网页

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_WEBPAGE
Title String 网页标题 长度不能超过 512,注:Title和Text字段微信和微信收藏必须要有其一
Text String 网页描述 长度不能超过 1K,朋友圈不显示该字段内容,注:Title和Text字段微信和微信收藏必须要有其一
Url String 网页 Url 长度不能超过 10K
ImagePath String 缩略图,本地图片路径 长度不能超过 10KB,大小不能超过 32K,与 ImageData 二选一
ImageData Bitmap 缩略图,图片 Bitmap 大小不能超过 32K,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setTitle(share_title);
  3. shareParams.setText(share_text);
  4. shareParams.setShareType(Platform.SHARE_WEBPAGE);
  5. shareParams.setUrl(share_url);//必须
  6. shareParams.setImagePath(file.getAbsolutePath());

6)分享 Emoji 表情(朋友圈、微信收藏不支持)

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_EMOJI
ImagePath String 本地图片路径 长度不能超过 10KB,大小不能超过 10M,ImagePath 与 ImageData 必须二选一
ImageData Bitmap 图片 Bitmap 大小不能超过 10M,ImagePath 与 ImageData 必须二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_EMOJI);
  3. shareParams.setImagePath(file.getAbsolutePath());

7)分享文件(朋友圈、微信收藏不支持)

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_FILE
FilePath String 本地文件路径 长度不能超过 10KB,大小不能超过 10M
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_FILE);
  3. shareParams.setFilePath(file.getAbsolutePath());

8)分享小程序(朋友圈、微信收藏不支持)

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_MINI_PROGRAM
Title String 网页标题/小程序标题 长度不能超过 512,注:Title和Text字段微信必须要有其一(微信低于6.5.6版本,小程序分享变网页分享)
Text String 网页描述/小程序描述 长度不能超过 1K,注:Title和Text字段微信必须要有其一(微信低于6.5.6版本,小程序分享变网页分享)
Url String 网页 Url 长度不能超过 10K,用于微信低版本兼容,当微信客户端低于6.5.6时,小程序分享变网页分享
ImagePath String 缩略图,本地图片路径 长度不能超过 10KB,大小不能超过 32K,与 ImageData 二选一,如果都没有填,默认使用MiniProgramImage的数据,用于微信低版本兼容,当微信客户端低于6.5.6时,小程序分享变网页分享
ImageData Bitmap 缩略图,图片 Bitmap 大小不能超过 32K,与 ImagePath 二选一,如果都没有填,默认使用MiniProgramImage的数据,用于微信低版本兼容,当微信客户端低于6.5.6时,小程序分享变网页分享
MiniProgramPath String 小程序页面路径 发起分享的App与小程序属于同一微信开放平台帐号
MiniProgramUserName String 小程序原始id 发起分享的App与小程序属于同一微信开放平台帐号
MiniProgramImagePath String 小程序缩略图,本地图片路径 长度不能超过 10KB,大小不能超过 128K,与 MiniProgramImageData 二必选一
MiniProgramImageData Bitmap 小程序缩略图,图片 Bitmap 大小不能超过 128K,与 MiniProgramImagePath 二必选一
MiniProgramWithShareTicket boolean 是否使用带shareTicket的分享 通常开发者希望分享出去的小程序被二次打开时可以获取到更多信息,例如群的标识。可以设置withShareTicket为true,当分享卡片在群聊中被其他用户打开时,可以获取到shareTicket,用于获取更多分享信息。最低客户端版本要求:6.5.13
MiniprogramType int 小程序的类型 正式版:0,开发版(测试版):1,体验版(预览版):2
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_MINI_PROGRAM);
  3. shareParams.setTitle(share_title);
  4. shareParams.setText(share_text);
  5. shareParams.setUrl(share_url);//用于微信低版本兼容,当微信客户端为低版本时,小程序分享变网页分享
  6. shareParams.setImagePath(file.getAbsolutePath());
  7. shareParams.setMiniProgramWithShareTicket(false);//
  8. shareParams.setMiniProgramType(0);// 正式版:0,开发版(测试版):1,体验版(预览版):2
  9. shareParams.setMiniProgramImagePath(file.getAbsolutePath());//小程序图片地址
  10. shareParams.setMiniProgramPath("pages/index/index");//小程序页面路径
  11. shareParams.setMiniProgramUserName("gh_cd370c00d3d4");//小程序原始id

QQ

1)分享图片

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGE
ImagePath String 本地图片路径 ImagePath 与 ImageUrl 必须二选一
ImageUrl String 网络图片地址 由于QQ的原因,从1.5.0版本起不再支持
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setImagePath(file.getAbsolutePath());

2)分享链接

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_WEBPAGE
Title String 标题 不超过 30 字符
Text String 描述 不超过 40 字符
ImagePath String 缩略图,本地图片路径 与 ImageUrl 二选一
ImageUrl String 缩略图,网络图片地址 必须以 http 或 https 开头,与 ImagePath 二选一
Url String 跳转链接 必须以 http 或 https 开头
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_WEBPAGE);
  3. shareParams.setTitle(share_title);
  4. shareParams.setText(share_text);
  5. shareParams.setUrl(share_url);
  6. shareParams.setImagePath(file.getAbsolutePath());

3)分享app

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_APPS
Title String 标题 不超过 30 字符
Text String 描述 不超过 40 字符
ImagePath String 缩略图,本地图片路径 与 ImageUrl 二选一
ImageUrl String 缩略图,网络图片地址 必须以 http 或 https 开头,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_APPS);
  3. shareParams.setTitle(share_title);
  4. shareParams.setText(share_text);
  5. shareParams.setImagePath(file.getAbsolutePath());

4)分享音乐

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_MUSIC
Title String 标题 不超过 30 字符
Text String 描述 不超过 40 字符
MusicUrl String 音乐链接 音乐文件的远程链接 ,点击播放按钮可直接播放, 以 URL 的形式传入 , 不支持本地音乐,必须以 http 或 https 开头
Url String 跳转链接 跳转页面 url,必须以 http 或 https 开头
ImagePath String 缩略图,本地图片路径 与 ImageUrl 二选一
ImageUrl String 缩略图,网络图片地址 必须以 http 或 https 开头,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_MUSIC);
  3. shareParams.setTitle(share_title);
  4. shareParams.setText(share_text);
  5. shareParams.setUrl(share_url);
  6. shareParams.setMusicUrl(music_url);
  7. shareParams.setImagePath(file.getAbsolutePath());
  8. //shareParams.setImageUrl("http://inews.gtimg.com/newsapp_bt/0/876781763/1000");

QQ空间

1)分享文本

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_TEXT
Text String 描述 不超过 10000 字符
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_TEXT);
  3. shareParams.setText(share_text);

2)分享图片

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGE
ImagePath String 本地图片路径 ImagePath与ImageUrl、ImageArray必须三选一
ImageUrl String 网络图片地址 必须以http或https开头,ImagePath与ImageUrl、ImageArray必须三选一
ImageArray Array 图片地址数组 支持多个图片,超出9张后,会变成上传相册,上传相册时只支持本地图片,ImagePath与ImageUrl、ImageArray必须三选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setImagePath(MyApplication.ImagePath);
  4. //shareParams.setImageUrl(share_imageurl);
  5. //String[] array = new String[]{ share_imageurl, share_imageurl_1};
  6. //shareParams.setImageArray(array);

3)分享链接

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_WEBPAGE
Title String 标题 最长 200 个字符
Text String 描述 最长 600 个字符
Url String 跳转链接 必须以 http 或 https 开头
ImagePath String 缩略图,本地图片路径 与 ImageUrl 二选一
ImageUrl String 缩略图,网络图片地址 必须以 http 或 https 开头,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_WEBPAGE);
  3. shareParams.setTitle(share_title);
  4. shareParams.setUrl(share_url);
  5. shareParams.setImagePath(file.getAbsolutePath());
  6. //shareParams.setImageUrl("http://inews.gtimg.com/newsapp_bt/0/876781763/1000");

4)分享音乐

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_MUSIC
Title String 标题 最长 200 个字符
Text String 描述 最长 600 个字符
MusicUrl String 音乐链接 音乐文件的远程链接 ,点击播放按钮可直接播放, 以 URL 的形式传入 , 不支持本地音乐,必须以 http 或 https 开头
Url String 跳转链接 跳转页面 url,必须以 http 或 https 开头
ImagePath String 缩略图,本地图片路径 与 ImageUrl 二选一
ImageUrl String 缩略图,网络图片地址 必须以 http 或 https 开头,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_MUSIC);
  3. shareParams.setTitle(share_title);
  4. shareParams.setMusicUrl(share_musicurl);
  5. shareParams.setUrl(music_shareUrl);
  6. shareParams.setImagePath(file.getAbsolutePath());
  7. //shareParams.setImageUrl("http://inews.gtimg.com/newsapp_bt/0/876781763/1000");

5)分享本地视频

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_VIDEO
VideoPath String 本地视频地址 不支持网络视频
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_VIDEO);
  3. shareParams.setVideoPath(MyApplication.VideoPath);

新浪微博

1)分享文本

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_TEXT
Text String 文本 不超过 1999 字符
ImagePath String 本地图片地址 不支持网络图片,文件不超过 10M,与 ImageData 二选一
ImageData Bitmap 本地图片 bitmap 不支持网络图片,不超过 2M,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setText(share_text);
  4. shareParams.setImagePath(file.getAbsolutePath());

2)分享图片

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGE
Text String 文本 不超过 1999 字符
ImagePath String 本地图片地址 不支持网络图片,文件不超过 10M,与 ImageData 二选一
ImageData Bitmap 本地图片 bitmap 不支持网络图片,不超过 2M,与 ImagePath 二选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setText(share_text);
  4. shareParams.setImagePath(file.getAbsolutePath());

3)分享链接

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_WEBPAGE
Text String 文本 不超过1999 字符
ImagePath String 本地图片地址 不支持网络图片,文件不超过 10M,与 ImageData 二选一
ImageData Bitmap 本地图片 bitmap 不支持网络图片,不超过 2M,与 ImagePath 二选一
Url String 跳转链接 长度不超过 512 字节
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_WEBPAGE);
  3. shareParams.setText(share_text);
  4. shareParams.setImagePath(file.getAbsolutePath());
  5. shareParams.setUrl(share_url);

新浪微博私信

1)分享链接

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_WEBPAGE
Text String 文本 不超过1024 字符
Title String 标题 不超过512 字符
ImagePath String 本地图片地址 不支持网络图片,文件不超过 32K,与 ImageData 二选一
ImageData Bitmap 本地图片 bitmap 不支持网络图片,不超过 32K,与 ImagePath 二选一
Url String 跳转链接 长度不超过512 字节
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_WEBPAGE);
  3. shareParams.setText(share_text);
  4. shareParams.setImagePath(file.getAbsolutePath());
  5. shareParams.setUrl(share_url);

Facebook、FbMessenger

1)分享链接

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_WEBPAGE
Url String 分享链接
Quote String 分享引用
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_WEBPAGE);
  3. shareParams.setUrl(share_url);
  4. shareParams.setQuote(quote);

2)分享图片

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGE
ImagePath String 本地图片地址
ImageData String 本地图片bitmap
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setImagePath(file.getAbsolutePath());

2)分享视频

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_VIDEO
VideoPath String 本地视频地址
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_VIDEO);
  3. shareParams.setVideoPath(file.getAbsolutePath());

Twitter

1)分享文本

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_TEXT
Text String 文本 不可为空,文本长度不超过 140 字符
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_TEXT);
  3. shareParams.setText(text);

2)分享链接

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_WEBPAGE
Url String 分享链接 仅支持http、https
Text String 文本 文本长度与链接长度之和不能超过140 字符
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_WEBPAGE);
  3. shareParams.setUrl(share_url);

3)分享图片

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGE
Text String 文本 与url总长度不能超过 140 字符
Url String 分享链接 仅支持http、https,与文本总长度不超过 140 字符
ImagePath String 本地图片地址 JPG, PNG, GIF, WEBP格式,不能超过5M,ImagePath与ImageUrl、ImageArray必须三选一
ImageData String 本地图片bitmap JPG, PNG, GIF, WEBP格式,不能超过5M,ImagePath与ImageUrl、ImageArray必须三选一
ImageArray Array 本地图片地址数组 支持多个图片,最多4张,JPG, PNG, GIF, WEBP格式,单张不能超过5M,ImagePath与ImageUrl、ImageArray必须三选一
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setImagePath(file.getAbsolutePath());

4)分享视频

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_VIDEO
Text String 文本 与url总长度不能超过 140 字符
Url String 分享链接 仅支持http、https,与文本总长度不超过 140 字符
VideoPath String 本地视频地址 不支持网络视频,视频的格式要求较多,具体参考twitter文档:https://developer.twitter.com/en/docs/media/upload-media/uploading-media/media-best-practices
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_VIDEO);
  3. shareParams.setVideoPath(videoPath);

JChatPro

1)分享图文

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGETEXT
AppName String 应用名称
title String 消息标题
text String 消息内容
ImageUrl String 缩略图网络图片地址
TargetPkg String 点击消息时跳转应用的包名
TargetClass String 点击消息时跳转应用的类名
Extra String 点击消息跳转到第三方应用时带的extra信息
Url String 点击消息时跳转应用的url
CallBackUrl String 点击消息跳转第三方应用失败时,回调的url
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGETEXT);
  3. shareParams.setAppName("JShareDemo");
  4. shareParams.setTitle(share_title);
  5. shareParams.setText(share_text);
  6. shareParams.setUrl(share_url);
  7. shareParams.setTargetPkg("com.tencent.mm");
  8. shareParams.setTargetClass("com.tencent.mm.ui.LauncherUI");
  9. shareParams.setExtra("this message from jshare.");

2)分享文本

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_TEXT
AppName String 应用名称
text String 消息内容,建议不超过3Kb
TargetPkg String 点击消息时跳转应用的包名
TargetClass String 点击消息时跳转应用的类名
Extra String 点击消息跳转到第三方应用时带的extra信息
Url String 点击消息时跳转应用的url(iOS用)
CallBackUrl String 点击消息跳转第三方应用失败时,回调的url
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_TEXT);
  3. shareParams.setAppName("JShareDemo");
  4. shareParams.setText(share_text);
  5. shareParams.setUrl(share_url);
  6. shareParams.setTargetPkg("com.tencent.mm");
  7. shareParams.setTargetClass("com.tencent.mm.ui.LauncherUI");
  8. shareParams.setExtra("this message from jshare.");

3)分享图片

参数 是否必须 参数类型 参数说明 备注
ShareType int 分享类型 Platform.SHARE_IMAGE
AppName String 应用名称
ImageUrl String 图片网络地址,与img_path、img_array三选一
ImagePath String 图片本地地址,与img_url、img_array三选一
ImageArray String 图片地址数组,与img_url、img_path三选一,最多9张
TargetPkg String 点击消息时跳转应用的包名
TargetClass String 点击消息时跳转应用的类名
Extra String 点击消息跳转到第三方应用时带的extra信息
Url String 点击消息时跳转应用的url(iOS用)
CallBackUrl String 点击消息跳转第三方应用失败时,回调的url
  1. ShareParams shareParams = new ShareParams();
  2. shareParams.setShareType(Platform.SHARE_IMAGE);
  3. shareParams.setAppName("JShareDemo");
  4. //shareParams.setImageUrl(image_url);
  5. //shareParams.setImagePath(image_path);
  6. //shareParams.setImageArray(image_array);
  7. shareParams.setUrl(share_url);
  8. shareParams.setTargetPkg("com.tencent.mm");
  9. shareParams.setTargetClass("com.tencent.mm.ui.LauncherUI");
  10. shareParams.setExtra("this message from jshare.");