Unity ios一键出包

本文介绍了如何使用Unity的PostProcessBuild回调函数创建一键出包工具,详细讲解了设置Capabilities、info.plist、framework、buildSettings的过程,并给出了编译脚本和打包ipa的步骤,以实现Unity iOS项目的自动化构建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为一直使用的Unity开发项目,对xcode不是很熟,但是每次出包是在是太麻烦了,所以打算弄个一键出包的工具。
在unity中,我们每次出包,unity有自动回调函数:
[PostProcessBuild(100)]
public static void OnPostProcessBuild(BuildTarget target, string pathToBuildProject)
{
}
其中PostProcessBuild在UnityEditor.Callbacks这个命名空间下。
我们给函数设置这个attribute后,Unity在每次到处工程师就会自动调用这个函数。注意:函数参数是固定的。
如果各位使用的Unity是最新版2017的话,就要容易很多,因为unity已经自带了很多函数功能,如果使用的是没有这些功能的版本的话,那么就需要各位自己导入了。
这是unity 已经帮我们处理好的XCode函数,不在需要我们自己在实现了。
下载解压运行,项目需要引用到一个nunit.framework的dll,各位可以自行百度或则在这个地址下载安装: http://nunit.org/download/
安装完成后重新设置引用。因为这个工程的命名空间和Unity的命名空间是一样的,所以大家需要重新全局修改一下命名空间,可以直接全局替换,只要和Unity的不一样就可以了。
修改完成后到这一步大家就可以编译dll了,将编译的dll导入到unity中。
我们导出项目需要设置的一般是这几个部分:
1:Capabilities
2:info.plist文件
3:framework
4:源代码
我们一个一个来。
设置Capabilities:
public static void SetCapabilities(string pathToBuildProject)
{
string projPath = pathToBuildProject + "/Unity-iPhone.xcodeproj/project.pbxproj"; //项目路径,这个路径在mac上默认是不显示的,需要右键->显示包内容才能看到。unity到处的名字就是这个。
PBXProject _pbxProj = new PBXProject();//创建xcode project类

_pbxProj.ReadFromString(File.ReadAllText(projPath));//xcode project读入
string _targetGuid = _pbxProj.TargetGuidByName("Unity-iPhone");//获得Target名

var capManager = new ProjectCapabilityManager(projPath, "XXXXX(自己替换).entitlements", PBXProject.GetUnityTargetName());//创建设置Capability类
capManager.AddPushNotifications(true);//设置Capability
capManager.AddGameCenter();
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值