http://blog.csdn.net/u012322710/article/details/52851254
一. 从 http://www.mob.com/ 下载Unity3d的ShareSDK包。
二. 注册一个账号,随便创建一个应用,获得一个APP Key ( 这一步不是必须的,但是可以统计分析数据,很实用)。
三. 导入ShareSDKForU3D.unitypackage插件包,在Unity里,随便在一个物体上拖进shareSDK这个脚本,选择为安卓项目。
四. 修改shareSDK组建,填入刚才获得的APP Key ,修改下面的各种平台的对接参数,需要去各个平台申请,如果不修改这个脚本的话,使用的都是官方的测试数据。不需要的平台可以直接在ShareSDKDevInfo.cs中注释掉。
五. 写代码
- using UnityEngine;
- using System.Collections;
- using UnityEngine.UI;
- using cn.sharesdk.unity3d;
-
-
-
-
- public class ShareDemo : MonoBehaviour {
-
-
- private ShareSDK shareSdk;
- public Text message;
-
-
- void Start () {
-
- shareSdk = GetComponent<ShareSDK>();
-
-
- shareSdk.shareHandler += ShareResultHandler;
-
- shareSdk.authHandler += AuthResultHandler;
-
- shareSdk.showUserHandler += GetUserInfoResultHandler;
- }
-
-
-
- public void OnShareClick()
- {
- ShareContent content = new ShareContent();
-
-
- content.SetText("快来和我一起玩这个游戏吧!");
- content.SetImageUrl("https://f1.webshare.mob.com/code/demo/img/4.jpg"); //分享图片
- content.SetTitle("标题title");
- content.SetTitleUrl("http://www.qq.com");
- content.SetSite("Mob-ShareSDK");
- content.SetSiteUrl("http://www.mob.com");
- content.SetUrl("http://www.sina.com"); //分享网址
- content.SetComment("描述");
- content.SetMusicUrl("http://up.mcyt.net/md5/53/OTg1NjA5OQ_Qq4329912.mp3");//分享类型为音乐时用
- content.SetShareType(ContentType.Webpage);
-
-
-
- shareSdk.ShowShareContentEditor(PlatformType.QQ, content);
- }
-
-
-
-
- void ShareResultHandler (int reqID, ResponseState state, PlatformType type, Hashtable result)
- {
- if (state == ResponseState.Success)
- {
- message.text =("share result :");
- message.text = (MiniJSON.jsonEncode(result));
- }
-
- else if (state == ResponseState.Fail)
- {
- message.text = ("fail! error code = " + result["error_code"] + "; error msg = " + result["error_msg"]);
- }
-
- else if (state == ResponseState.Cancel)
- {
- message.text = ("cancel !");
- }
- }
-
-
-
- public void OnAuthClick()
- {
-
- shareSdk.Authorize(PlatformType.QQ);
- }
-
-
-
- void AuthResultHandler(int reqID, ResponseState state, PlatformType type, Hashtable result)
- {
- if (state == ResponseState.Success)
- {
- message.text = ("authorize success !");
-
-
- shareSdk.GetUserInfo(type);
-
-
- }
- else if (state == ResponseState.Fail)
- {
- message.text = ("fail! error code = " + result["error_code"] + "; error msg = " + result["error_msg"]);
- }
- else if (state == ResponseState.Cancel)
- {
- message.text = ("cancel !");
- }
- }
-
-
-
- void GetUserInfoResultHandler(int reqID, ResponseState state, PlatformType type, Hashtable result)
- {
- if (state == ResponseState.Success)
- {
-
-
- switch (type)
- {
- case PlatformType.QQ:
- message.text = (MiniJSON.jsonEncode(result));
-
- break;
- }
-
-
- }
- else if (state == ResponseState.Fail)
- {
- message.text = ("fail! error code = " + result["error_code"] + "; error msg = " + result["error_msg"]);
- }
- else if (state == ResponseState.Cancel)
- {
- message.text = ("cancel !");
- }
- }
-
-
- }
六.
修改安卓配置文件 AndroidManifest.xml
这个地方写了很多ShareSDK需要的安卓权限什么的,不修改也是能运行的,以后如果要和其他安卓功能结合需要修改。
结束语:还可以,挺好用的,支持安卓和IOS,而且还带统计,据说还是免费的。但是他本身带的MiniJSON真的没有LitJson好用,如果要做第三方登录还是用LitJson来解析比较好。还有授权以后转会应用,就重新打开了,导致接受不到信息。这个以后再研究吧。
Demo下载地址: http://download.csdn.net/detail/u012322710/9657229
一. 从 http://www.mob.com/ 下载Unity3d的ShareSDK包。
二. 注册一个账号,随便创建一个应用,获得一个APP Key ( 这一步不是必须的,但是可以统计分析数据,很实用)。
三. 导入ShareSDKForU3D.unitypackage插件包,在Unity里,随便在一个物体上拖进shareSDK这个脚本,选择为安卓项目。
四. 修改shareSDK组建,填入刚才获得的APP Key ,修改下面的各种平台的对接参数,需要去各个平台申请,如果不修改这个脚本的话,使用的都是官方的测试数据。不需要的平台可以直接在ShareSDKDevInfo.cs中注释掉。
五. 写代码
- using UnityEngine;
- using System.Collections;
- using UnityEngine.UI;
- using cn.sharesdk.unity3d;
-
-
-
-
- public class ShareDemo : MonoBehaviour {
-
-
- private ShareSDK shareSdk;
- public Text message;
-
-
- void Start () {
-
- shareSdk = GetComponent<ShareSDK>();
-
-
- shareSdk.shareHandler += ShareResultHandler;
-
- shareSdk.authHandler += AuthResultHandler;
-
- shareSdk.showUserHandler += GetUserInfoResultHandler;
- }
-
-
-
- public void OnShareClick()
- {
- ShareContent content = new ShareContent();
-
-
- content.SetText("快来和我一起玩这个游戏吧!");
- content.SetImageUrl("https://f1.webshare.mob.com/code/demo/img/4.jpg"); //分享图片
- content.SetTitle("标题title");
- content.SetTitleUrl("http://www.qq.com");
- content.SetSite("Mob-ShareSDK");
- content.SetSiteUrl("http://www.mob.com");
- content.SetUrl("http://www.sina.com"); //分享网址
- content.SetComment("描述");
- content.SetMusicUrl("http://up.mcyt.net/md5/53/OTg1NjA5OQ_Qq4329912.mp3");//分享类型为音乐时用
- content.SetShareType(ContentType.Webpage);
-
-
-
- shareSdk.ShowShareContentEditor(PlatformType.QQ, content);
- }
-
-
-
-
- void ShareResultHandler (int reqID, ResponseState state, PlatformType type, Hashtable result)
- {
- if (state == ResponseState.Success)
- {
- message.text =("share result :");
- message.text = (MiniJSON.jsonEncode(result));
- }
-
- else if (state == ResponseState.Fail)
- {
- message.text = ("fail! error code = " + result["error_code"] + "; error msg = " + result["error_msg"]);
- }
-
- else if (state == ResponseState.Cancel)
- {
- message.text = ("cancel !");
- }
- }
-
-
-
- public void OnAuthClick()
- {
-
- shareSdk.Authorize(PlatformType.QQ);
- }
-
-
-
- void AuthResultHandler(int reqID, ResponseState state, PlatformType type, Hashtable result)
- {
- if (state == ResponseState.Success)
- {
- message.text = ("authorize success !");
-
-
- shareSdk.GetUserInfo(type);
-
-
- }
- else if (state == ResponseState.Fail)
- {
- message.text = ("fail! error code = " + result["error_code"] + "; error msg = " + result["error_msg"]);
- }
- else if (state == ResponseState.Cancel)
- {
- message.text = ("cancel !");
- }
- }
-
-
-
- void GetUserInfoResultHandler(int reqID, ResponseState state, PlatformType type, Hashtable result)
- {
- if (state == ResponseState.Success)
- {
-
-
- switch (type)
- {
- case PlatformType.QQ:
- message.text = (MiniJSON.jsonEncode(result));
-
- break;
- }
-
-
- }
- else if (state == ResponseState.Fail)
- {
- message.text = ("fail! error code = " + result["error_code"] + "; error msg = " + result["error_msg"]);
- }
- else if (state == ResponseState.Cancel)
- {
- message.text = ("cancel !");
- }
- }
-
-
- }
六.
修改安卓配置文件 AndroidManifest.xml
这个地方写了很多ShareSDK需要的安卓权限什么的,不修改也是能运行的,以后如果要和其他安卓功能结合需要修改。
结束语:还可以,挺好用的,支持安卓和IOS,而且还带统计,据说还是免费的。但是他本身带的MiniJSON真的没有LitJson好用,如果要做第三方登录还是用LitJson来解析比较好。还有授权以后转会应用,就重新打开了,导致接受不到信息。这个以后再研究吧。
Demo下载地址: http://download.csdn.net/detail/u012322710/9657229