關(guān)于升級xcode14后,項(xiàng)目遇到的一些問題

因?yàn)樘O果對xcode14做了比較大的更新,把原來的Legacy Build System干掉了,默認(rèn)用新的New Build System,特別一些比較古老的項(xiàng)目,就會出現(xiàn)編譯錯(cuò)誤的問題,而這些錯(cuò)誤很多都是歷史遺留的,比較難發(fā)現(xiàn)問題;

1、pods中的resource bundles要指定team

pod文件最下方增加以下代碼,設(shè)置pod進(jìn)來的第三方自動(dòng)加入team和設(shè)置最低適配版本11.0(xcode14要求適配11.0以上)

2、好不容易項(xiàng)目能成功運(yùn)行了,卻無法打包,報(bào)了一個(gè)莫名的錯(cuò)誤,百度了一圈,也嘗試了網(wǎng)上各種方法,還是archive failed

xcode也沒有其他更詳細(xì)的提示

最后在某個(gè)QQ群里一個(gè)大神提示了下,才解決了問題,原來在xcode13編譯的時(shí)候有可能會增加編譯腳本,或者是前一任增加的編譯腳本,在taget -- build phases 里面出現(xiàn)了最后那個(gè) run Script ,里面是編譯時(shí)運(yùn)行的腳本,把腳本去除,就能成功編譯打包了。

3、因?yàn)槲业捻?xiàng)目里面是有視頻播放,有用到橫屏全屏播放,iOS16出了新API,適配的方法網(wǎng)上有很多,可以自行查找,都能適配成功;不過我適配了iOS16的橫屏,運(yùn)行iOS16以下的機(jī)型,原來適配iOS 15的卻失效了,之前iOS 15的代碼都沒修改,一點(diǎn)都沒動(dòng),就不會橫屏了,后面百度查找了下,項(xiàng)目在xcode14運(yùn)行后,需要增加下方一行代碼,iOS 15之前的橫屏才會生效

解決辦法:在appDelegate中添加

//此方法會在設(shè)備橫豎屏變化的時(shí)候調(diào)用

(UIInterfaceOrientationMask)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window {

return UIInterfaceOrientationMaskAll;

}

在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

中添加一句代碼

[[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容