您的位置:首页 > 移动开发 > Unity3D

unity开发关于IOS平台接入之自动化构建管线

2015-06-15 00:24 791 查看
这两天做了下unity ios平台接入,遇到了些问题给大家分享下,这里说下自动化构建管线遇到的一些问题;

自动化构建管线用到的工具XUPorter可以到gitHub上下载:https://github.com/onevcat/XUPorter

官方文档上会有关于XUPorter的描述

先说下.projmods文件各个参数的用法:

"group":
"KKKeychain",

"libs":
[],

"frameworks":
["Security.framework"],

"headerpaths":
[],

"files":
[],

"folders":
["iOS/KKKeychain/"],

"linker_flags":
[],

"complier_flags:"[],

"excludes":
["^.*.meta$",
"^.*.mdown$",
"^.*.pdf$"]

group:所有由该projmods添加的文件和文件夹所属的Xcode中的group名称

libs:在Xcode Build Phases中需要添加的动态链接库的名称,比如libz.dylib

frameworks:在Xcode Build Phases中需要添加的框架的名称,比如Security.framework

headerpaths:Xcode中编译设置中的Header Search Paths路径

files:加入工程的文件名

folders:加入工程的文件夹,其中所有的文件和文件夹都将被加入工程中

linker_flags:添加到工程linker flag中的链接配置,比如-ObjC

compiler_flags:设置是否为ARC

excludes:忽略的文件的正则表达式,匹配的文件将不会被加入工程中

上面是一些基本的用法,这些参数还有一些其他特性,
如libs,frameworks等在两个.projmods文件里都添加,导出工程时不会重复添加;

添加的SDK为非ARC文件
关于folders参数与compiler_flags参数,
在compiler_flags里设置-fno-objc-arc则所有文件都被设置为非ARC,
但是unity5.0以上默认都为ARC会导致运行崩溃,所以可以在floders里这样设置
"folders":

[

"SDK/:-fno-objc-arc",

"SDK/XXX/Config/"

],
这样就可以选择导入的SDK文件夹文件为非ARC;

导入的第三方framwork一定要在files:里添加否则会报错
如SDK/XXX/xxx.framwork
这里注意第三方文件的位置放置不对也是无法找到framwork的
如果导出正确Xcode
build Phases/Link Binary With Libraries下会有自动添加该framwork
(分享个我遇到的问题,unity项目里用到的一个framwork和我sdk里的framwork重复了,结果我sdk那个
framwork目录下的其他framwork也找不到了,我的解决方法是直接把找不到的framwork直接对到项目
目录下就OK了)

关于jS、html文件unity无法兼容问题,直接把js文件放在assets目录外就OK了,我是直接把整个SDK都
放到assets目录外了,这样unity就不需要读取这些文件,构建xcode工程时也不会拷贝这些文件只是添加
了引用,打包时只是把需要的东西存起来与目录无关。<_>好像说跑偏了

哈哈,就说这些。新手第一次发blog大家多支持啊。<__>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: