Catalyst 'SwiftUI.AccessibilityNode' ไม่ได้เป็นองค์ประกอบที่รู้จักได้


20

ฉันสร้าง iOS Single Page App ใหม่ (รวมถึง 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ดังนั้นจึงดูเหมือนว่าจะเป็นเรื่องปกติในปัจจุบัน
Lukas Kirner

ดูเหมือนว่าตัวสั่นด้วยความตื่นเต้นด้ายไม่เกี่ยวข้อง
drewster

คุณกำลังล่มหรือไม่ หลังจากข้อความเกี่ยวกับ 'ไม่รู้จักองค์ประกอบที่สามารถทำให้เป็นอนุกรมได้' ฉันได้รับความผิดพลาดก่อนหน้านี้
drewster

ไม่มีปัญหาเกิดขึ้น
Lukas Kirner

ยังไม่มีข้อผิดพลาด แต่ฉันได้รับข้อความนี้ในแอปของฉันด้วย
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 มุมมองใหม่และเรียกใช้โดยไม่มีการเปลี่ยนแปลงมันจะแสดง "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กล่าวว่า


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.