位置: 编程技术 - 正文
推荐整理分享unity3d利用sharesdk分享内容至微信、新浪微博、qq空间等国内主流社交平台(ios篇)(unity3D利用W,A,S,D让物体移动),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:unity sharesdk,unity3dapi,unity sharesdk,unity3D利用W,A,S,D让物体移动,unity3d inspector,unity3D利用W,A,S,D让物体移动,unity3D利用W,A,S,D让物体移动,unity3D利用W,A,S,D让物体移动,内容如对您有帮助,希望把文章链接给更多的朋友!
大家在玩游戏时,通常都会看到分享的功能,最常见的是分享到微信朋友圈、qq空间或者新浪微博,产品经理通常称这个功能模块为社会化。那这个功能在unity3d制作的游戏中怎么做到的呢?以前的老做法是按照对应的ios、安卓平台、在微信or新浪微博上下载对应的sdk、按照其说明文档逐一接入,费时费力,而且多数都不支持u3d,需要自己写接口,令广大程序苦不堪言。如果能拥有一个集成化的,并且支持u3d分享的sdk,仅需让我们接入一次,而不必多次重复操作,那定是一件愉快的事。ShareSDK——目前,我使用过的这款集成型社会化组件还不错,关键是免费。下面就其具体使用方式简单做下介绍。考虑不周之处还望指正。不再闲话,进入正题。
这里我们先以unity3d分享到ios微信、微博、qq空间为例:
1、首先到其官网下载unity3d对应的sdk,下载地址:
appkey注册地址: mac上itunes里面查看)。最终得到以下信息即可:
新浪微博同理,地址:
QQ空间类,地址: StreamingAssets只读文件夹下面,写入下面的代码。content["image"] = Application.streamingAssetsPath”/pic.png”;
安卓得放在sdcard中才可以,需要在分享前把u3d里的图片拷贝到sdcard卡里面,这也是我看有其他前辈这么摸索出来的。在Resources文件夹下放一个图片,记住一定要PNG,在U3D里面把图片的式修改成RGBA。
//读、写的路径
string imagePath = Application.persistentDataPath "/pic.png";
//如果文件不存在,把它拷贝进去。
if(!System.IO.File.Exists(imagePath))
{
Texture2D o = Resources.Load("pic ") as Texture2D;
System.IO.File.WriteAllBytes(imagePath, o.EncodeToPNG());
}
这样在分享图片的时候
//image的路径就可以直接写了。
string imagePath = Application.persistentDataPath "/ pic.png";
if(System.IO.File.Exists(imagePath))
{
content["image"] = imagePath;
}
如果你想分享的是一张截屏图片,路径这样来写
Application.CaptureScreenshot("screen.png");
content["image"] = Application.persistentDataPath "/screen.png";
8、如果遇到微信分享因为权限失败,看是否你有写了这些,请删除这里,可能是因为要获得朋友圈信息权限不足,导致分享失败。
9、至此,我们完成了在unity当中的工作。接下来,我们要发布到安卓或者ios平台,还需要继续进行下面的工作。
、分享到ios平台:———————————————————————
首先到sharesdk官网下载iossdk,地址:
、xcode打开导出的u3d工程,将刚才解压的名为sharesdk的文件夹直接拖到打开的工程下,注意勾选copy,如图:
、导入完毕之后,可以在左侧看到其目录结构,如果想删除可去源文件夹下删除即可。
、添加依赖项,可能你有做了其他接入,有些依赖项会发生重复,去掉重复,仅需一个即可。
、微信分享还需要进一步配置,打开unityappcontroller.mm文件。加入头文件sharesdk/sharesdk.h,讲以下代码替换至截图位置。
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL*)url
{
return [ShareSDKhandleOpenURL:url wxDelegate:nil];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)urlsourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return [ShareSDKhandleOpenURL:url sourceApplication:sourceApplication annotation:annotationwxDelegate:nil];
}替换以下代码。否则无法弹出分享界面。
、微信分享还需要在info处,添加url。分别填写程序包名、在微信平台申请的appkey。如图:
、在ShareSDKUnity3DBridge文件中,找到要分享的对应平台注释掉不需要的预编译文件。注意如果分享qq空间需要取消qq注释。其他用哪个放开即可
、完全配置好后,编译运行。点击微博分享,会弹出分享内容,如果从未授权登陆,当点击发表会出现授权登陆界面。登陆一次后会记录登录状态。
微信分享,必须需要设备安装微信才能分享。安装微信后会跳转授权登陆界面。
如果有异常,注意查看xcode里面报出的log。
微信如果出现不弹窗,请注意是否url配对、代码是否替换、微信是否安装。
微信分享遇到权限问题,注意删掉前文说的几句代码。
弹窗异常,注意选择对应ui下载。
新浪必须等ios应用上线才能分享成功,否则登录进入大约显示未审核广场云云。
至此,unity3d分享ios微信、新浪微博、qq空间就此结束。如有问题,敬请指正。
微信分享效果:
新浪微博效果:
另外有分享的安卓篇。以及Facebook、twitter等我将在后续有时间补上。
unity项目总结方法2 4.测量距离Rayray=Camera.main.ScreenPointToRay(Input.mousePosition);if(Input.GetMouseButton(0)){if(Physics.Raycast(ray,outhit,)){if(cejupos1==Vector3.zero)cejupos1=hit.point;cejupos2=hit.point;
NGUI 制作简易背包UI 前言本文由作者@zx一路飞奔出品,转载请注明出处文章地址:
Unity3D研究院之IOS触摸屏手势控制镜头旋转与缩放 前几篇文章介绍了很多Unity3D引擎自身的一些问题,今天我们在回到IOS设备上讨论一些触摸屏幕手势,本章的目标是通过触摸iPhone屏幕手势实现模型左右
友情链接: 武汉网站建设