怎样将游戏从Unity导到iOS设备上
当我开始开发自己的iOS游戏时,我会考虑的第一件事便是如何将其导出到设备中,如此有效地测试我的游戏。最初,该过程看似很长且复杂,我所遇到的主要问题是,尽管存在许多资源,但是它们并非完全来自同样的地方,所以我不得不通过各种教程将其组合并匹配在一起。所以我决定通过本文一步步地总结这一过程。这是我到目前为止所遵循的一些方式;希望这也能够带给处于同样开发阶段的人更多帮助。
1.获得unity和iOS导出器
如果你还未这么做,你首先需要在官网下载最新版本的Unity。已经出现了2个版本,分别是免费版(http://unity3d.com/unity/download)和Pro版(https://store.unity3d.com),所以你可以根据自己的需求做出选择。自从2013年5月以来,手机便自带导出器,所以你无需为它们再花钱了。
2.注册苹果开发者计划
你需要做的下一件事便是加入苹果开发者计划,这是设定你的开发认证的必要过程。加入该计划每年需要支付99美元,你将需要通过以下开发者网站进行注册:https://developer.apple.com/programs/ios/(一旦你完成了注册并支付了费用,你便会收到一封激活邮件帮助你加入该计划并让你能够使用自己所需要的所有功能)。
3.下载并安装XCode
加入开发者计划后的下一件事便是下载并安装XCode。这在一开始可能会让人困惑,你们中的有些人会知道XCode是用户为iOS创造原生应用。而Unity使用XCode作为中介将内容带劲iOS设备中,所以你并未真正进入XCode,所有的开发将是发生在Unity上,XCode的作用是将内容从Unity导入设备中。你可以从苹果商店中下载XCode:https://developer.apple.com/xcode/。完成下载后请确保在继续下一步前安装好它。
4.创造一个开发者配置文件
到目前为止你应该已经下载了Unity和XCode并激活了你的苹果开发者计划会员。现在,为了将你的游戏直接从Unity导到设备上,你需要一个开发者配置文件(这将让你能够移植你所开发的游戏或任何测试到你的设备上)。苹果提供了两种类型的配置文件,即用于开发和测试的开发者配置文件以及用于提交到苹果商店的分布配置文件。为了创造开发者配置文件,你需要做3件事:注册你的设备/建立一个应用ID/获得证书。
你可以通过你的苹果开发者计划完成这三件事。所以导航至这一地址: https://developer.apple.com/ ,然后从最上方的菜单进入会员中心。使用你的苹果ID和密码登录。
现在选择Certificates, Identifiers和Profiles,你便能够从中访问并管理你的配置文件,苹果ID等等。
1)注册你的设备
在Certificates, Identifiers和Profiles部分中选择设备。因为这对于苹果去识别用于测试的特定设备是必要的。这并不会改变你的设备的任何设置,你能够轻松地使用自己每天所使用的设备。在注册你的设备时,你可以点击+按键去添加一个新设备。然后你需要填写设备的名字(可以是任何名字)以及UDID(即设备独一无二的ID)。你将会发现自己可以注册一个以上的设备进行测试,如果你想要基于不同设备进行测试的话这边很有帮助(如一台iPhone和一台iPad)。
为了找到你的设备的UDID,你需要将你的设备与电脑连接在一起,然后打开iTunes并点击iPhone按键(界面的右上方的),你将看到设备的信息包含了名字。然后你可以将鼠标停在上方并点击Serial Number,这将变成一个常标识,这便是UDID。
这是你需要的数字,你必须将其复制黏贴到Member Center Portal的ID部分。现在你便可以注册你的设备了。记住一旦你注册了设备,你便只能改变它的名字而不能改变UDID。
2)设置一个应用ID
下一步便是设置你的应用ID。仍然在Member Center Portal的Certificates, Identifiers和Profiles,选择应用ID并点击+按键。
首先提供任何你想要的描述,只要它能够帮助你记得你的ID是用于做什么便可。一个好的方法便是为一款应用使用一个独特的名字并为一款测试应用使用一个普通的名字。接下来你需要设置Bundle Identifier,这是以相反的域符号形式呈现出来“
即:com+你的全名(如果你是一名个体开发者的话)+你的游戏名称:
com.YourName.TheGameName
这类型的Bundle ID将很清楚并只能用于唯一的一款游戏中。因此你需要为你的每一款游戏使用不同的名字。然而这是很有用的,这让你能够访问像”游戏中心“和”应用内部购买“等服务。
另一方面,Wildcard的Bundle ID是以如下形式呈现出来:
com.YourName.*
这里用星号替代了游戏名字。这种格式让你能够在多款应用中使用同样的ID,而无需每次都设置一个不同的名字,但是这却不允许你使用特定的设备。
现在你已经选择了继续并确认了应用ID。将捆绑ID记录下来,因为之后你将需要在Unity的构建设置中使用到它。
3)获得开发者证书
你需要做的第一件事便是通过你的计算机获得Certificate Signing Request。前往Applications > Utilities > Keychane Access,然后是Preferences > Certificates。确保Online Certificate Status Protocol和Certificate Revocation List都是处于OFF,并关闭Preference。现在在Keychane Access中前往Certificate Assistant并从Certificate Authority中选择Request Certificate。提供与你在注册开发者计划时使用的同样细节并点击继续。提供一个名字并保存到Desktop。在保存时选择2048位体和RSA。
现在在你的Desktop中应该拥有一个带着.certSigningRequest前缀的文件。
现在回到Member Center Portal的Certificates, Identifiers和Profiles部分,选择Certificates > Development(就像你要获得开发证书那样),然后按压+按键进行创造。
选择上传你保存在Desktop中的Certificate Signing Request。在你提交前,确保向下滚动页面并在Intermediate Certificates中找到WWDR Certificate。在你之后需要的时候可以下载它。
现在进行提交,你的Certificate Signing Request将被发送到苹果并被另外一个你能够下载的内容所取代。它将被命名为:ios_development.cer
所以现在你的Desktop上应该拥有两个证书。即ios_development.cer和WWDR Certificate,你需要双击这两个证书将其安装于Keychane Access。现在你便设置好你的开发者证书了。
4)创造配置文件
在完成上述三个步骤后,现在的你可以继续去创造配置文件了。仍然在Member Center Portal的Certificates, Identifiers和Profiles中,前往Provisioning Profiles > All并按压+按键去创造一个全新的配置文件。
在Development和Distribution Profile中做出选择(这里我们需要的是Development!),然后在下一个屏幕上选择与该配置文件相联系的应用ID,设备和证书(游戏邦注:这是你在之前步骤已经设置好了的)。最后为配置文件命名并回顾之前的选择。当准备好时点击Generate。现在你便可以看到你的全新配置文件,你需要将其下载到你的Desktop上然后安装它。配置文件将是一个带有.mobileprovision前缀的文件。
现在转向XCode,前往Window > Organizer > Devices > Provisioning Profile,然后双击已经下载到你的Desktop上的配置文件。你便完成了安装并能够给予Organizer视图看到它。最后一步非常重要,因为只有将配置文件安装到Xcode,它才能够正常运行。
一些额外的内容:仍然在XCode,如果你的设备在Devices视图中仍看不到,那就前往Window > Organizer > Devices,按照名字选择设备。你可能需要在这个过程中选择Use for Development,然后提供你的开发者记录细节。
虽然这是一个较为漫长的过程,但好消息是你已经完成工作了!
现在你可以开始致力于你的Unity游戏并准备好导出它。
记得你只能注册设备和创造开发者证书一次,每当你创造一款新游戏时你都需要创造一个全新的应用ID和全新的配置文件。
5.面向Unity
当你准备好导出你的游戏时,前往File > Build Settings,并确保你选择了iOS作为平台。记得包含当前场景到导出游戏中(使用Add Current按键)。然后点击Player Seetings按键并前往Other Settings。
将Bundle Identifier按照你之前设置好的进行设置(com.YourName.TheGameName),你可能需要将Target IOS版本设为6(或者你的设备的版本)。将所有内容都保持为默认,除非你有改变它们的理由。
然后回到Build Settings Window并点击Build然后将项目保持到其自身的文件夹中。
连接你的设备和计算机,打开文件夹并开始XCode项目。你将看到它在XCode中打开。从XCode界面的左上角选择你的设备,然后点击Run按键。
项目将给予你的设备进行创建并自动运行(确保你的设备是打开的!)
就是这样了!现在你的游戏已经能够运行于你的iOS设备上了。
怎样将游戏从Unity导到iOS设备上的更多相关文章
- 不通过App Store,在iOS设备上直接安装应用程序(转)
今天在iOS设备上安装天翼云存储app,在safari上直接打开http://cloud.189.cn/wap/index.jsp,点击“点击免费安装”,如下图: 神奇的事情发生了,设备上直接下载ap ...
- jquery keyup 在IOS设备上输入中文时不触发
今天做一个异步查询功能的时候发现在IOS设备上查询中文时keyup没有触发,在其他设备上时可以的,后来在stackoverflow上找到下面这种解决方法,贴出来算是抛砖引玉了. $h_input.on ...
- 【转】使IFRAME在iOS设备上支持滚动
原文链接: Scroll IFRAMEs on iOS原文日期: 2014年07月02日 翻译日期: 2014年07月10日翻译人员: 铁锚 很长时间以来, iOS设备上Safari中超出边界的元素将 ...
- 使IFRAME在iOS设备上支持滚动
原文链接: Scroll IFRAMEs on iOS原文日期: 2014年07月02日 翻译日期: 2014年07月10日翻译人员: 铁锚很长时间以来, iOS设备上Safari中超出边界的元素将不 ...
- iOS设备上出现的click,live,on点击失去效果
iOS设备上出现的点击事件失效,但是在Android上可以正常使用, 1.iOS设备对标签点击限制,不认为是可点击的标签,需要给要绑定点击事件的标签加上一个样式,cursor:pointer:这样就可 ...
- 不通过AppStore,在iOS设备上直接安装应用程序的原理
本文转载至 http://mobile.51cto.com/hot-439095.htm 通过itms-services协议,可以通过safari浏览器直接在iOS设备上安装应用程序.利用这种方式, ...
- 在Windows笔记本上调试运行在iOS设备上的前端应用
我在每天工作中需要在不同的移动设备上测试我们开发的前端应用是否正常工作,比如iOS设备和Android设备.我用的工作笔记本电脑又是Lenovo的,安装的是Windows操作系统. 有的时候一个开发好 ...
- 在IOS设备上POST提交form表单,后台接收不到值怎么办?
原文:https://blog.csdn.net/xhaimail/article/details/90440029 最近在工作上遇到一个奇葩问题,在Android和Windows平台上做请求时参数都 ...
- 【前端开发】解决ios设备上fixed浮动的input输入框兼容问题
我们在开发移动端页面时,经常会存在这种需求,在页面顶部或底部有一个输入框,一直浮动在顶部或底部位置,中间部分的内容是可以滚动的.比如底部输入框的搜索功能,或底部输入框的写评论功能. 这种问题,我们一般 ...
随机推荐
- CodeForces 731E Funny Game
博弈,$dp$. 设$f[i]$表示 如果先手第一次出手取到位置$i$,直到游戏结束,双方均采取最优策略,先手-后手得分的差值. 那么$f[i]=min(sum[i]-sum[j]+maxf[j+1] ...
- KMP字符串匹配模板代码
洛谷的模板传送门 #include<cstdio> #include<cstring> #include<cstdlib> #include<cmath> ...
- HTML的介绍
什么是HTML? HTML:Hyper Text Markup Language :超文本标记语言. 超文本:功能比普通文本更加强大 标记语言:使用一组标签对内容进行描述的语言,它不是编程语言 htm ...
- 51nod 1201 (dp)
整数划分 将N分为若干个不同整数的和,有多少种不同的划分方式,例如:n = 6,{6} {1,5} {2,4} {1,2,3},共4种.由于数据较大,输出Mod 10^9 + 7的结果即可. In ...
- 【IO】同步、异步、阻塞、非阻塞的理解
最近一直在看跟IO模型有关的内容,感觉差不多理解了,于是开始写这一篇总结博客.针对的操作系统为UNIX/LINUX,大致的体系结构如上图. 操作系统中的客体主要包括了:文件,Socket和进程,本文主 ...
- grep 参数
功能说明:查找文件里符合条件的字符串. 语 法:grep [-abcEFGhHilLnqrsvVwxy][-A<显示列数>][-B<显示列数>][-C<显示列数>] ...
- 【BZOJ 3309】DZY Loves Math
http://www.lydsy.com/JudgeOnline/problem.php?id=3309 \[\sum_{T=1}^{min(a,b)}\sum_{d|T}f(d)\mu(\frac ...
- [UOJ217]奇怪的线段树
如果一个节点是$0$但它子树内有$1$那么无解,否则我们只需把那些是$1$但子树内没有其他$1$的节点(这些区间是被定位的区间)都访问一遍即可 根据ZKW线段树定位区间的过程,可以发现一段(从左到右) ...
- 消除Xcode 5中JosnKit类库的bit masking for introspection of objective-c 警告
Xcode 5中苹果对多个系统框架及相关类库进行了改进.之前建立的项目在Xcode 5中重新编译会产生一些新问题. JosnKit是常用的轻量级Josn解析类,在Xcode 5中: BOOL work ...
- oracle client PLSQL配置
date:20140525auth:Jin platform :windows 一.服务端启动服务和创建账号# su - oracle$ lsnrctl start$ sqlplus / as sys ...