ios - 将字符串列表添加到 Realm 托管对象会导致应用程序在启动时崩溃
问题描述
在以下代码中,添加“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"
}
}
有没有其他人遇到过这个问题?
解决方案
我见过这个。我知道您的members
财产似乎是问题,但实际上是groupId
财产。groupId
需要有一个默认值。
改变这个:
@objc dynamic var groupId : String
对此:
@objc dynamic var groupId : String = "SOME_DEFAULT_STRING_VALUE"
推荐阅读
- python - 熊猫将列转换为日期时间,但其类型不是日期时间
- actionscript-2 - 如果全局变量上的语句不执行函数 gotoAndStop();
- java - 有没有可以用来搜索字符串的功能?
- c++ - 在类之间传递函数中产生的数组
- swift - 从 allCases 获取枚举案例索引的通用函数
- java - 使用固定大小的数组实现队列
- matlab - 如何在 Matlab 中获取 bwboundaries 内的像素坐标
- python-3.x - 在这个 PyTorch 表达式中 * 和 mean 代表什么?
- mysql - 在间隔中选择最近的日期
- aframe - 如何触发框架的方向模式?