操作系统:macOS Catalinna 10.15.2 Xcode版本Version 11.3 (11C29)
1 首先是xocde11的splash页面匪夷所思的问题 - -
由于前面并没有在unity内设置splash,这里选择在xcode里设置splash页面。如果你也是感觉自己设置的完全没毛病,但是splash他就是不显示,那么看下面。
1,点击你工程中的images.xcassets,如图:
2,找到右边已经存在的launchimage,删除它,没错,删除:
3,重新创建一个launchimage,如图:然后:
之后把你的splash图挨个拖入机型中:
4,找到工程中的LaunchScreen-iPhone.xib文件,点击他,然后在右边找到这个选项,取消勾选他:
假如你也要打iPad包,那么对应的LaunchScreen-iPad.xib里面的同一个选项也取消勾选。
然后打包,你的splash讲道理就应该有了,但是假如还是没有,那就点这里清楚一下缓存,再打个包。。
然后插一嘴,我想让splash页面多显示几秒,在UnityAppController.mm里的startUnity方法中加入了暂停3秒进程的代码,可能不是很科学,仅供参考吧,代码如下:
- (void)startUnity:(UIApplication*)application
{
NSAssert(_unityAppReady == NO, @"[UnityAppController startUnity:] called after Unity has been initialized");
//进程暂停3秒
[NSThread sleepForTimeInterval:3];
UnityInitApplicationGraphics();
// we make sure that first level gets correct display list and orientation
[[DisplayManager Instance] updateDisplayListCacheInUnity];
UnityLoadApplication();
Profiler_InitProfiler();
[self showGameUI];
[self createDisplayLink];
UnitySetPlayerFocus(1);
}
2 关于签名那些设置
由于最初我没有开发者账号,所以搞起来费了好多时间。没有开发者账号其实也是可以打包的,但是也只能自己测试用吧。开发的话尽量申请开发者账号吧,没有开发者账号打包的流程就不在这里哔哔了,网上可以搜到一堆:其实就是在这里设置一下账号吧啦吧啦的:
然后general里关于包名啊什么的,都设置为你在Apple开发者网站申请的那些就OK了。
3 额 遇到的坑好像挺多的,一时半会想不起来了,后面记录一下上传testflight的坑吧。
对了还有关于没有通知权限时的编译错误(当账号不是开发者账号时):
"does not support the Push Notifications capability."
在xcode里面搜索这个文件: entitlements ,将其删除继续编译就好了。