将字符串列表添加到 Realm 托管对象会导致应用程序在启动时崩溃

Ari*_*gal 1 realm ios swift

在以下代码中,添加“let Members =”声明会导致应用程序在启动时立即崩溃。

崩溃是 EXC_BAD_ACCESS 并且堆栈跟踪指向 Object.swift -> getNonIgnoredMirrorChildren

import Foundation
import RealmSwift

class GroupSyncModel : Object, Codable {
    @objc dynamic var created : String?
    @objc dynamic var name : String?
    @objc dynamic var groupId : String // Primary key
    @objc dynamic var adminUserId : String?
    @objc dynamic var adminUserName : String?
    @objc dynamic var joinedAt : String?

    let members = List<String>()

    override static func primaryKey() -> String? {
        return "groupId"
    }
}
Run Code Online (Sandbox Code Playgroud)

还有其他人遇到过这个问题吗?

Rob*_*Rob 5

我见过这个。我知道问题似乎出在您的members财产上,但实际上问题出在groupId财产上。groupId需要有一个默认值。

改变这个:

@objc dynamic var groupId : String
Run Code Online (Sandbox Code Playgroud)

对此:

@objc dynamic var groupId : String = "SOME_DEFAULT_STRING_VALUE"
Run Code Online (Sandbox Code Playgroud)