分享系统接口

来自AnySDK 文档
跳转至: 导航搜索

分享系统介绍

分享系统目前支持ShareSDK的一键分享(支持新浪微博、QQ空间、微信好友、微信朋友圈、微信收藏、QQ好友、腾讯微博、人人网、易信好友、易信朋友圈的分享功能)、微信、Facebook。

相关接口

设置监听

分享系统存在回调信息,需要设置监听类以及监听方法。
void setListener(MonoBehaviour gameObject,string functionName)
AnySDKShare.getInstance () .setListener (this,"ShareExternalCall");
开发者需要设置监听方法
void ShareExternalCall(string msg)
{
    Debug.Log("ShareExternalCall("+ msg+")");
    Dictionary<string,string> dic = AnySDKUtil.stringToDictionary (msg);
    int code = Convert.ToInt32(dic["code"]);
    string result = dic["msg"];
    switch(code)
    {
    case (int)ShareResultCode.kShareSuccess://分享成功回调
        break;
    case (int)ShareResultCode.kShareFail://分享失败回调
        break;
    case (int)ShareResultCode.kShareCancel://分享取消回调
        break;
    case (int)ShareResultCode.kShareNetworkError://分享网络出错回调
        break;
    default:
        break;
    }
}

注:回调过来的参数为一个字符串,其中包括(code回调状态)、msg(回调信息)需要调用AnySDKUtil.stringToDictionary (msg);获取key和value

分享

void share(Map<String, String> datas);
datas记录了分享的一些相关的信息。
参数表如下
参数 是否必传 参数说明 备注
title Y title标题,在印象笔记、邮箱、信息、微信(包括好友、朋友圈和收藏)、 易信(包括好友、朋友圈)、人人网和QQ空间使用 ShareSDK、微信
titleUrl Y titleUrl是标题的网络链接,仅在人人网和QQ空间使用 ShareSDK(Android)
site Y site是分享此内容的网站名称,仅在QQ空间使用 ShareSDK(Android)
siteUrl Y siteUrl是分享此内容的网站地址,仅在QQ空间使用 ShareSDK(Android)
text Y text是分享文本,所有平台都需要这个字段 ShareSDK、微信
imagePath N imagePath是本地的图片路径,除Linked-In外的所有平台都支持这个字段 ShareSDK、微信
imageUrl N imageUrl是图片的网络路径,新浪微博、人人网、QQ空间和Linked-In支持此字段 ShareSDK
description Y description是主体内容,用于人人网 ShareSDK(Android)
dialogMode N 编辑分享内容的模式,默认全屏false,对话框为true ShareSDK(Android)
comment N comment是我对这条分享的评论,仅在人人网和QQ空间使用 ShareSDK(Android)
url Y 链接,在QQ空间、人人、微信、QQ使用 ShareSDK、微信
theme N 设置主题,默认为传统主题,可传"skyblue"修改主题 ShareSDK(Android)
latitude N 分享地纬度,新浪微博、腾讯微博和foursquare支持此字段 ShareSDK(Android)
longitude N 分享地经度,新浪微博、腾讯微博和foursquare支持此字段 ShareSDK(Android)
mediaType Y mediaType是个枚举分享类型,0文本,1图片,2新闻/网址,3音乐,4视屏,5应用,6非GIF消息,7GIF消息,微信必须使用 微信
shareTo Y shareTo是分享到什么位置,例如微信 0-聊天 1-朋友圈 2-收藏 微信必须使用 微信
thumbImage N thumbImage是缩略图, 微信iOS需要使用 微信(iOS)
thumbSize N thumbImage是缩略图尺寸(不超过127), 微信Android需要使用 微信(Android)

分享回调说明

回调信息 code msg
分享成功 kShareSuccess null或者错误信息的简单描述
分享取消 kShareCancel null或者错误信息的简单描述
分享失败 kShareFail null或者错误信息的简单描述
分享网络出现错误 kShareNetworkError null或者错误信息的简单描述

举例说明

Dictionary<string,string> info = new Dictionary<string, string>();
// title标题,印象笔记、邮箱、信息、微信、人人网和QQ空间使用
info["title"] = "ShareSDK是一个神奇的SDK";
// titleUrl是标题的网络链接,仅在人人网和QQ空间使用
info["titleUrl"] = "http://sharesdk.cn";
// site是分享此内容的网站名称,仅在QQ空间使用
info["site"] = "ShareSDK";
// siteUrl是分享此内容的网站地址,仅在QQ空间使用
info["siteUrl"] = "http://sharesdk.cn";

// imagePath是图片的本地路径,Linked-In以外的平台都支持此参数
info["imagePath"] = "/sdcard/test.png";
// imageUrl是图片的网络路径,新浪微博,人人网,QQ空间支持此字段
info["imageUrl"] = "http://www.baidu.com/img/bdlogo.png?tn=63090008_1_hao_pg";

// url仅在微信(包括好友和朋友圈)中使用
info["url"] ="http://sharesdk.cn";

// text是分享文本,所有平台都需要这个字段
info["text"] = "ShareSDK支持如微信、新浪微博、腾讯微博等社交平台";
// comment是我对这条分享的评论,仅在人人网和QQ空间使用
info["comment"] = "无";
//微信SDK分享需要使用到的参数
info["mediaType"] = "1"; //分享类型: 0-文字 1-图片 2-网址  
info["shareTo"] = "2"; //分享到:0-聊天 1-朋友圈 2-收藏  
AnySDKShare.getInstance ().share (info);