Каталізатор 'SwiftUI.AccessibilityNode' - не відомий серіалізаційний елемент


20

Я створив свіжий додаток для однієї сторінки iOS (включаючи SwiftUI) з Xcode 11.1 і включив Mac Catalyst. Після запуску нового проекту на моєму 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

Примітка. Я також видалив можливість Sandbox, інакше я отримую помилку про те, що не можу писати ApplicationAccessibilityEnabled

Хтось знає, як це вирішити?


1
Я знайшов це у Twitter twitter.com/steipete/status/1154677703100026880, тож, здається, це нормально в даний час
Лукас Кірнер

Ця нитка Twitter не здається актуальною.
малюнок

Ви отримуєте збої? Одразу після повідомлення про "невідомий серіалізаційний елемент" я отримую передумову.
drewster

Поки що немає аварій
Лукас Кірнер

Також не трапилось, але я також отримую це повідомлення у своєму додатку
gurehbgui

Відповіді:


11

Наскільки я можу сказати, не існує способу позбутися від цієї помилки, і в цьому немає необхідності; це щось властиве SwiftUI. Це відбувається на iOS, iPadOS та (отже) Mac Catalyst навіть у абсолютно новому проекті. Це також, здається, нічого не зашкодить, крім того, що турбує нас, розробників.

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

Якщо ви відкриєте Xcode, створіть новий проект iOS з одним переглядом та запустіть його без змін, він відобразить "Привіт, світ!". Натисніть "Привіт, світ!" і ваша консоль увійде в систему [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")
    }
}

Помилка все ще реєструється, коли натискаю "Привіт, світ!".

Я також спробував розширити, SwiftUI.AccessibilityNodeщоб зробити його серіалізаційним елементом, наприклад:

import SwiftUI

extension SwiftUI.AccessibilityNode {
}

Каже Xcode type SwiftUI.AccessibilityNode doesn't exist.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.