Интеграция библиотеки fast_actions при флаттере не работает из-за SceneDelegate на родной iOSIOS

Программируем под IOS
Ответить
Anonymous
 Интеграция библиотеки fast_actions при флаттере не работает из-за SceneDelegate на родной iOS

Сообщение Anonymous »

В моем приложении Flutter я пытаюсь интегрировать быстрые_действия.
Дело в том, что мы используем SceneDelegate ->класс SceneDelegate: UIResponder и расширение SceneDelegate: UIWindowSceneDelegate.
Это означает, что быстрые_действия не работают с этой настройкой.
Я нашел решение, которое является взломанным и не принято нашей командой:

Код: Выделить всё

func scene(_ scene: UIScene, willConnectTo _: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
..
..
..
if let shortcutItem = connectionOptions.shortcutItem {
if let delegate = UIApplication.shared.delegate as? FlutterAppDelegate {
_ = delegate.application(UIApplication.shared,
didFinishLaunchingWithOptions: [UIApplication.LaunchOptionsKey.shortcutItem: shortcutItem])
}
}
}

and

func windowScene(_ windowScene: UIWindowScene,
performActionFor shortcutItem: UIApplicationShortcutItem,
completionHandler: @escaping (Bool) -> Void) {
if let delegate = UIApplication.shared.delegate as? FlutterAppDelegate {
_ = delegate.application(UIApplication.shared,
performActionFor: shortcutItem,
completionHandler: completionHandler)
}
}

Это решение работает, но команда с этим не согласна, поскольку это небезопасно.

А еще идеи?
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/798 ... elegate-on
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»