Android分享SDK接入说明

1 文挡说明

1.1 功能描述

本文档旨在说明BaseSDK版本分享功能说明。
本文的所述接口需要在接入BaseSDK,并且初始化以后才可以使用。

1.2 阅读范围

本文档适用于SDK 接入人员阅读

1.3 使用说明

SDK分享功能封装了各平台分享接口,以方便开发者接入. 必选参数不能null或者空字符串. 图片需要的地址皆为设备本地存储全路径。

2 接口使用说明

3.1 功能说明

分享信息到第三方平台。

3.2 MIDShareParams 参数说明

MIDShareParams 渠道类型说明

参数 类型 说明 参数值
Share_Type_Unkown int 未知渠道,主要用于分享失败情况。由于参数或者没有打分享渠道包的时候产生
Share_Type_QQ int QQ分享 1
Share_Type_Qzone int QQ空间分享 2
Share_Type_WeChat int 微信好友分享 3
Share_Type_WeChatLine int 微信朋友圈分享 4
Share_Type_SinaWeiBo int 新浪微博分享 5
Share_Type_Facebook int Facebook分享 6
Share_Type_Twitter int Twitter分享 7
Share_Type_System int 系统分享 8
参数 类型 说明
shareFlag String 分享类型 (1) Share_Flag_Text 文本分享 (2) Share_Flag_TextImage 图片分享 (3)Share_Flag_Link 连接分享
shareText String 想要分享的文字内容
shareImagepath String 需要分享出去的图片地址
shareThumbImage String 需要分享出去的缩略图图片地址
shareUrl String 需要分享出去的链接
shareTitle String 需要分享出去的连接标题

3.3 接口定义

3.3.1 默认分享接口

使用分享墙,SDK制定了UI,提供用户选择分享渠道。

  1. /**
  2. * 分享接口
  3. *
  4. * @param logValue 分享数据接口
  5. * @param callback 分享接口回调
  6. */
  7. public void MIDBaseSDKSendShare(MIDShareParams logValue,
  8. MIDShareCallback callback);

3.3.2 自定义分享接口(可选)

研发自定义UI, 直接设置分享渠道。
type值请从参数 3.2 MIDShareParams 参数说明

  1. /**
  2. * 分享接口
  3. *
  4. * @param type 分享渠道 MIDShareParams内的type值。 参数## 3.2 MIDShareParams 参数说明
  5. * @param logValue 分享数据接口
  6. * @param callback 分享接口回调
  7. */
  8. public void MIDBaseSDKSendShare(int type,MIDShareParams logValue,
  9. MIDShareCallback callback);

3.4 接口举例

3.4.1 文本内容分享

参数 类型 说明 是否必传
shareFlag String MIDShareParams.Share_Flag_Text 必传
shareText String 想要分享的文字内容 必传
  1. MIDShareParams sharedata = new MIDShareParams();
  2. sharedata.setShareFlag(MIDShareParams.Share_Flag_Text);
  3. sharedata.setShareText("游戏分享测试");
  4. MIDBaseSDK.getInstance(mMainActivity).MIDBaseSDKSendShare(sharedata,
  5. new MIDShareCallback() {
  6. @Override
  7. public void MIDBaseShareSuccess(int type) {
  8. // TODO Auto-generated method stub
  9. // 分享成功
  10. }
  11. @Override
  12. public void MIDBaseShareFail(int type, int code) {
  13. // TODO Auto-generated method stub
  14. // 分享失败
  15. }
  16. });

3.4.2 图片内容分享

参数 类型 说明 是否必传
shareFlag String MIDShareParams.Share_Flag_TextImage 必传
setShareImagepath String 本地图片地址 必传
  1. MIDShareParams sharedata = new MIDShareParams();
  2. sharedata.setShareFlag(MIDShareParams.Share_Flag_TextImage);
  3. sharedata.setShareTitle("游戏");
  4. sharedata.setShareText("游戏官网链接");
  5. sharedata.setShareImagepath(本地图片地址);
  6. MIDBaseSDK.getInstance(mMainActivity).MIDBaseSDKSendShare(sharedata,
  7. new MIDShareCallback() {
  8. @Override
  9. public void MIDBaseShareSuccess(int type) {
  10. // TODO Auto-generated method stub
  11. // 分享成功
  12. }
  13. @Override
  14. public void MIDBaseShareFail(int type, int code) {
  15. // TODO Auto-generated method stub
  16. // 分享失败
  17. }
  18. });

3.4.3 链接内容分享

参数 类型 说明 是否必传
shareFlag String MIDShareParams.Share_Flag_Link 必传
setShareUrl String 需要分享出去的url 必传
setShareTitle String 分享标题,如果没有传将会使用游戏名称 可选
setShareText String 页面描述 可选
setShareImagepath String 本地图片地址 可选
setShareThumbImage String 本地图片地址 可选
  1. MIDShareParams sharedata = new MIDShareParams();
  2. sharedata.setShareFlag(MIDShareParams.Share_Flag_Link);
  3. sharedata.setShareUrl(需要分享的连链接);
  4. sharedata.setShareTitle("游戏");
  5. sharedata.setShareText("游戏官网");
  6. sharedata.setShareImagepath(本地图片地址);
  7. sharedata.setShareThumbImage(chachePath);
  8. MIDBaseSDK.getInstance(mMainActivity).MIDBaseSDKSendShare(sharedata,
  9. new MIDShareCallback() {
  10. @Override
  11. public void MIDBaseShareSuccess(int type) {
  12. // TODO Auto-generated method stub
  13. // 分享成功
  14. }
  15. @Override
  16. public void MIDBaseShareFail(int type, int code) {
  17. // TODO Auto-generated method stub
  18. // 分享失败
  19. }
  20. });

3.5 分享邀请好友信息

SDK3.1.7版本启用。
功能说明,使用前需要先创建邀请模版,可以和运营沟通创建。模版ID需要提前创建完成。
邀请奖励事件和运营需要沟通好。
deeplink 在创建好模版后,根据模版ID拿到链接,才可以配置。

3.5.1 接口定义

  1. /**
  2. * 分享一段文字,后面平台会追加邀请链接
  3. *
  4. * @param templateID 模版ID
  5. * @param inviteMsg 分享内容
  6. * @param callback 回调
  7. */
  8. public void MIDBaseSDKShareInvite(String templateID, String inviteMsg,
  9. final MIDShareCallback callback) ;

在AndroidManifest.xml 启动activity内。

  1. <intent-filter android:autoVerify="true">
  2. <action android:name="android.intent.action.VIEW" />
  3. <category android:name="android.intent.category.DEFAULT" />
  4. <category android:name="android.intent.category.BROWSABLE" />
  5. <data
  6. android:host="根据模版信息配置,实际使用时确定。"
  7. android:scheme="https" />
  8. </intent-filter>

3.5.3 接口实例

  1. MIDBaseSDK.getInstance(MIDBase_Demo_MainActivity.mMainActivity).MIDBaseSDKShareInvite("游戏模版ID",
  2. "欢迎来体验游戏!邀请链接为:", new MIDShareCallback() {
  3. @Override
  4. public void MIDBaseShareSuccess(int type) {
  5. Logs.i(LOGTAG, " middemo_share MIDBaseShareSuccess ");
  6. MIDToast.makeText(MIDBaseDataCollector.getInstance().getmActivity(),
  7. "分享成功", Toast.LENGTH_LONG);
  8. }
  9. @Override
  10. public void MIDBaseShareFail(int type, int code) {
  11. Logs.i(LOGTAG, " middemo_share MIDBaseShareFail code:" + code);
  12. MIDToast.makeText(MIDBaseDataCollector.getInstance().getmActivity(),
  13. " 分享失败", Toast.LENGTH_LONG);
  14. }
  15. });

3.6 回调说明

  1. /**
  2. * 分享成功
  3. * @param type 本次使用的分享渠道type
  4. */
  5. public void MIDBaseShareSuccess();
  6. /**
  7. * 分享失败
  8. * @param type 本次使用的分享渠道type
  9. */
  10. public void MIDBaseShareFail (int type, int code);

4、参数规则限制介绍

综合3个渠道信息对比取最小值,分享链接的时候,描述信息不可以超过40个字符,title 标题不能超过 30个字符。
分享图片不能超过2M。

4.1、新浪微博

新浪微博支持分享:文字、本地图片、网络图片
参数说明: text:140字符以内、微博客户端分享图片不能大于2M,仅支持JPEG、GIF、PNG格式 ;注:微博分享链接是链接和内容拼接在一起的。

  1. 分享的文本内容http://ceshi.com;

如果imagePath和imageUrl同时存在,imageUrl将被忽略。

4.3、QQ空间

QQ空间支持分享链接 参数说明 title:最多200个字符 text:最多600个字符

4.4、微信(好友、朋友圈、收藏)

参数说明: title:512Bytes以内、text:1KB以内 、imageData:10M以内、 imagePath:10M以内(传递的imagePath路径不能超过10KB)、 imageUrl:10KB以内 musicUrl:10KB以内、 url:10KB以内

4.5、QQ分享

QQ分享支持图片和链接
参数说明: title:最多30个字符、 text:最多40个字符

4.6、Facebook分享

Facebook支持分享图片、链接,不支持分享文本,分享图片的时候不支持带文本内容
参数说明:图片小于4M

4.7、Twitter分享

Twitter支持分享图片、文本,没办法知道分享结果,跳转过去回来就算成功
参数说明:图片小于4M,文本内容小于140字符。