Я пытаюсь реализовать наблюдатель за изменениями значения для ключа дать в UserDefaults из родной части ios многоплатформенного проекта, написанного на Kotlin/Native. Вот код, который я написал:
fun subscribeForDataChange(storeName: String, callback: () -> Unit) {
NSUserDefaults(storeName).addObserver(
object : NSObject() {
fun observeValue(
observer: NSObject,
forKeyPath: String,
options: NSKeyValueObservingOptions,
context: COpaquePointer?
) {
callback()
print("Data Changed!!!")
}
},
options = NSKeyValueObservingOptionNew,
forKeyPath = DATA_KEY,
context = null
)
}
Проблема в том, что я никогда не получаю уведомление, скорее всего, потому, что observeValue
не определено в NSObject, но что еще я должен сделать для этого?