Xcode可以使用脚本,在打包时修改Display Name、Bundle Id等信息。
一、在Build Phases添加脚本
1.2 自增长Build Number
二、在Scheme里添加脚本
在这里写可以不用写判断Debug或Release模式
三、错误
可能会出现错误:
编译前clean一下,就可以解决了。
这是由于PRODUCT_BUNDLE_IDENTIFIER并没有改过来导致的。
所以在打包上传之前,需要clean一下。
参考资料:
上一篇 我写了在xcode里面添加 run script 来执行脚本,可是打包之后发现,只有用 xcode 运行的时候才会执行这个 shell 命令,查了很多资料,最后我觉得应该是我理解错了,这里的 run script 很可能只是为了方便自动化打包之类的场景适用,而并不是真正的运行时执行脚本。那该怎么实现呢?参阅博客一
参阅博客二
参阅博客三
但是有一个问题,因为脚本是:
adb需要管理员权限,所以一直提示没有权限执行脚本。
查了一下资料,可以用 with administrator privileges ,这时候又报"用户名密码不正确",不知道为啥,最终抛弃了 NSTask ,找到了 这个库 ,它自动帮我们处理权限问题,最终:
按理说这样应该就没啥问题了,可是这是由又报 someting went wrong:6005 ,又是一顿google, 最终发现 :
近日,在运行项目时,在毫无征兆的情况下,xcode多次出现build canceled的情况,并且这种情况出现的很频繁,也没有任何报错和警告,我一时也无从下手。无奈只能多方查找Stack Overflow的相关问答,但是上面的回答要么是很老,要么是尝试之后依然无效。经过一条一条的查看,终于“修成正果”:
原因:我之前为了让项目可以自动升级build version,在Build Phases里面特意新添加了一个Run Script,并且在里面添加脚本:
xcrun agvtool next-version -all
就是这句话,才导致了build canceled的发生。
解决办法:将xcrun agvtool next-version -all替换为下图文字:
复制下来就是:
然后重新build,搞定!!!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)