unity内设关于playersettings的一些选项。

 

写在最前:由于手欠,开发时将公司电脑的系统升级到了最新的macOS Catalinna 10.15.2,于是打开untiy2017导入项目时,发现不管导入什么格式的音频资源,unity都会卡死- -。也是懵逼了,后来查了资料,也不晓得是unity的锅还是macOS的锅,总之把unity升级到2018以后的版本就会解决这个问题。。

 

1后台机制

(但是unity默认的按home键时会暂停游戏,此处的设置只能设置按home键时程序是挂起suspend还是退出exit还是自定义custom),但是尝试做一个后台播放音频的app时,发现无论怎么自定义,程序都会在点击home键时暂停app。mono的update那些函数并不会执行,unity机制下的所有代码似乎都会停止。音频播放随之就会停止,网上搜索了很多办法,例如在xcode工程里加入如下代码,切后台时,当前音频会继续执行,但是播放完当前曲目时并不会自动播放,因为自动播放的那套代码还是C#写的,始终运行在unity的机制里,遂放弃。这是代码:

    //unity后台播放音乐
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
    [[AVAudioSession sharedInstance] setActive:YES error: nil];
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

记录一下unity 打包Xcode以及上传testflight的一些坑---untiyplayersettings_unity

2 关于splash

pro版是支持自定义splash的,但是操作过程中发现。设置unity的logo图片时,自定义图片都会被缩放居中,以logo形式去显示。由于我想要的是一个全屏显示的效果,折腾了一番之后遂放弃,有哪位大哥知道如何在unity内设置一个全屏的splash页面的请不吝赐教。于是在后面的xcode工程中设置。unity里面只设置了icon。splash那一栏统统清空不设置。

3关于xxxshader的错误

由于工程最初是在Android下,playersettings-othersettings下的graphics apis默认的是metal,并没有随着我切换iOS平台而切换过来,所以打包运行会报错。原因是iOS并不支持metal,此处应设置为opengles3。如图:记录一下unity 打包Xcode以及上传testflight的一些坑---untiyplayersettings_unity_02

4包名及公司名的设置

Company Name和Product Name最好直接设置为在苹果开发者账号中申请的那个,这样打完xcode包之后会直接生成对应的Company Name和Product Name,方便打ipa包。(当然打包前还是仔细对照一下看看对不对- -)

5打包 Build

build时如果之前build过,在对应目录打包时会有提示问你是要replace(替换)append(追加),例如xcode里有自定义的c,c++代码。这里选择append不会删除之前的代码,不过如果打包有什么异常的话,这里建议直接点replace,生成新的包。