Catalyst 'SwiftUI.AccessibilityNode' не является известным сериализуемым элементом

20

Я создал новое одностраничное приложение для iOS (включая SwiftUI) с Xcode 11.1 и включил Mac Catalyst. После запуска свежего Project на моем Mac (конечно же, в macOS 10.15), после одного нажатия на окно я получаю следующие ошибки.

2019-10-18 12:59:48.479186+0200 test[3130:122148] Metal API Validation Enabled
2019-10-18 12:59:50.960734+0200 test[3130:122148] [AXRuntimeCommon] Unknown client: test
2019-10-18 12:59:50.962261+0200 test[3130:122148] [AXRuntimeCommon] This class 'SwiftUI.AccessibilityNode' is not a known serializable element and returning it as an accessibility element may lead to crashes
2019-10-18 12:59:51.313 test[3130:122148] **************_____________**************AXError: AVPlayerView is not a kind of NSView
1   AccessibilityBundles                0x00007fff42ee3b69 _AXBValidationCheckIsKindOfClass + 201
2019-10-18 12:59:51.386 test[3130:122148] **************_____________**************AXError: MKStarRatingView is not a kind of NSView
1   AccessibilityBundles                0x00007fff42ee3b69 _AXBValidationCheckIsKindOfClass + 201

Примечание: я также удалил возможность Песочницы, иначе я получаю сообщение об ошибке не могу написать ApplicationAccessibilityEnabled

Кто-нибудь знает, как это решить?

Лукас Кирнер
источник
1
Я нашел это в Твиттере twitter.com/steipete/status/1154677703100026880, так что в настоящее время это кажется нормальным
Лукас Кирнер
Эта тема в Твиттере, похоже, не актуальна.
Дрюстер
Вы получаете сбои? Сразу после сообщения о «неизвестном сериализуемом элементе» я получаю аварийное завершение.
Дрюстер
Пока не вылетает
Лукас Кирнер
Также не разбился, но я также получаю это сообщение в моем приложении
gurehbgui

Ответы:

12

Насколько я могу судить, избавиться от этой ошибки невозможно, и в этом нет необходимости; это что-то присуще SwiftUI. Это происходит на iOS, iPadOS и (следовательно) Mac Catalyst даже в совершенно новом проекте. Это также, кажется, не повредит ничему, кроме как беспокоить нас, разработчиков.

Последние шесть месяцев я работаю в SwiftUI над приложением, работающим на iOS, iPadOS и MacOS (Catalyst). This class 'SwiftUI.AccessibilityNode' is not a known serializable elementОшибка была там с самого начала. Я не обнаружил, что это является источником каких-либо проблем в течение шести месяцев разработки SwiftUI.

Если вы откроете Xcode, создадите новый проект iOS с одним представлением и запустите его без изменений, на нем будет отображаться «Hello, World!». Нажмите "Привет, мир!" и ваша консоль войдет [AXRuntimeCommon] This class 'SwiftUI.AccessibilityNode' is not a known serializable element and returning it as an accessibility element may lead to crashes.

Я попытался добавить модификаторы доступности, например:

struct ContentView: View {
    var body: some View {
        Text("Hello, World!")
        .accessibility(hint: Text("Just say hi"))
        .accessibility(identifier: "helloWorld")
    }
}

Ошибка все еще регистрируется, когда я нажимаю «Hello, World!».

Я также попытался расширить его, SwiftUI.AccessibilityNodeчтобы сделать его сериализуемым элементом, например:

import SwiftUI

extension SwiftUI.AccessibilityNode {
}

Xcode говорит type SwiftUI.AccessibilityNode doesn't exist.

ggruen
источник