unity自动打包经验
发布日期:2021-06-30 19:38:17 浏览次数:2 分类:技术文章

本文共 1014 字,大约阅读时间需要 3 分钟。

为什么想要自动添加

由于Unity是全平台的游戏开发环境,在开发中针对特定平台的特定功能时,很难避免根据对象平台的不同而引入不同的依赖。包括源码,需要的库和框架等。在使用各种插件后这种情况愈发严重:比如想加入内购功能,StroreKit.framework必不可少,而且也需要相应的处理代码。按照一般的Unity插件开发流程,在完成.cs的接口声明和Unity侧的调用实现后,最重要的当然是在iOS native侧完成实现。而在以前,包括依赖库和所有源码文件,都只有在Unity生成Xcode工程之后,再手动添加。如果工程小依赖少的话花不了太多时间,但是如果项目很大,很可能折腾一次就要十来分钟,严重影响了工作效率,必须加以解决。

怎么办

Unity开发团队也意识到了这个问题,在Unity编译的最后加入了一个脚本调用的命令,会自动搜索Editor文件夹下的PostprocessBuildPlayer,并进行调用,在该文件中可以自己加入脚本来向Xcode中添加库和文件。关于PostprocessBuildPlayer的详细信息,可以参看  ,关于向Xcode中添加文件或库,gonzoua的  也许是不错的选择。但是似乎xcs只能针对Xcode3来添加,在Xcode4中,主工程文件的结构发生了改变,导致xcs失效,而这个项目也迟迟没有更新(也许有时间我会考虑接手继续这个项目,但肯定不是现在…)。因此不得不打其他主意。

在Unity3.5中,加入了一个很棒的标签——  被该标签标注的函数将自动在build player后被调用,这为大家提供了一个不需要用脚本和命令行就能添加或修改编译得到的工程的绝好的入口。darktable用python实现了一个Xcode4工程文件读写的接口  ,但是对于Unity来说,更需要的是C#的实现。Cariola完成了  ,但是存在一些错误和不太好用的地方,代码也很乱。我在其基础上进行了一些改进和整理。但是因为变动的还是比较大,很难merge回去,所以决定自己开一个项目来继续推进这个项目。

例:

[PostProcessBuild(100)]

    publicstaticvoidOnPostProcessBuild(BuildTargettarget,stringpathToBuiltProject){ }

参考:http://www.tuicool.com/articles/N7z6za

转载地址:https://linxinfa.blog.csdn.net/article/details/50528642 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:项目中的问题与解决方案
下一篇:接口和抽象类的区别

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月16日 06时40分08秒