Unity 接入 ShareSDK 的微信分享

原创文章,转载请注明。原文地址, http://freemanapp.com/zh/?p=74

接入ShareSDK,可以在游戏中非常方便的进行分享。下面简单的描述接入的过程。首先就是到官网上去下载最新的ShareSDK的Unity压缩包,然后解压。文件中包含了一个DEMO,把Unity3dDemo/Assets/Plugins目录拷贝到您的项目的Assets目录中。

打开Plugins目录,将ShareSDK.cs脚本文件拖动到Main Camera对象中进行脚本挂接。

注意:如果ShareSDK.cs并非挂载在Main Camera对象或者Main Camera对象修改为其他名字时,需要调用ShareSDK. setCallbackObjectName设置回调对象名称。否则会导致需要回调的接口无法正常回调,设置代码如下:

ShareSDK.setCallbackObjectName("Main Camera");
ShareSDK.open ("api20");

申请微信开发应用
1.注册账号
2.填写移动应用
3.等待审核

初始化ShareSDK,设定配置

//WeChat
Hashtable wcConf = new Hashtable();
wcConf.Add ("app_id", "wx13***********c");
ShareSDK.setPlatformConfig (PlatformType.WeChatTimeline, wcConf);

填入申请通过的app_id

发起分享时,填充好内容并通过ShareSDK发出

public void ShowShareViewWechat()
{

Hashtable content = new Hashtable();
content["content"] = "分享的内容";
content["image"] = "分享图片";
content["title"] = "分享标题";
content["type"] = System.Convert.ToString((int)ContentType.News);
content["url"] = "分享地址";
content["siteUrl"] = "分享网址";
content["site"] = "分享网站";

ShareResultEvent evt = new ShareResultEvent(ShareResultHandler);

ShareSDK.shareContent(PlatformType.WeChatTimeline, content, evt);
}

ShareResultHandler是分享的回调,在回调中处理分享成功与失败的情况

void ShareResultHandler (ResponseState state, PlatformType type, Hashtable shareInfo, Hashtable error, bool end)
{
	if (state == ResponseState.Success)
	{
		// 分享成功
	}
	else if (state == ResponseState.Fail)
	{
		// 分享失败
	}
	else if (state == ResponseState.Cancel) 
	{
		// 分享取消
	}else{
	}
}

Unity的设置就完成了,下面就可以导出工程,然后Xcode打开,还需要添加一些文件和依赖库

Unity 接入 ShareSDK 的微信分享_第1张图片


把下载的ShareSDK文件夹添加到工程目录下,注意,还得在工程的Info下增加Scheme,如图所示

Unity 接入 ShareSDK 的微信分享_第2张图片

把app_id填入URL Schemes里,这样,Xcode的配置也完成了,编译通过后,就可以进行分享了, good luck!

你可能感兴趣的:(游戏开发,Unity)