Swift. Ошибка в работе с UIApplication.shared

Такой вопрос, в старой программе которая реализована под UIKit, было сделано вот так. Условие в котором далее выполняются действия:

if(theApp().m_Disp.ConnectToServ(self.SelCon)) {

В условии происходит обращение к функции

func theApp() -> iSPultApp!
{
    return UIApplication.shared as? iSPultApp
}

Где далее из функции вызывается класс

class iSPultApp: UIApplication {
    var m_Disp: CRoot = CRoot()

Там всё работает, возможно ли это как-то переделать под SwiftUI? Программа заходит в func theApp(), а далее вместо перехода в класс, возвращается в условии и там ошибка:

if(theApp().m_Disp.ConnectToServ(self.SelCon)) { 
Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value.

self.SelCon при это не пуст, а заполнен данными, судя по всему в func theApp() передаётся nil

Заранее огромное спасибо за помощь ?


Ответы (1 шт):

Автор решения: VAndrJ

Судя по кускам кода и комментарию, проблема у Вас из-за нового сниппета Xcode со SceneDelegate. Тут 2 варианта:

1 Переписать по-нормальному без подобного:

func theApp() -> iSPultApp!
{
    return UIApplication.shared as? iSPultApp
}

2 Удалить SceneDelegate, подчистить от него Info.plist и использовать такой же подход.

→ Ссылка