IntentHandler не может читать UserDefaults, но Timeline может

Я хочу читать UserDefaults, когда пользователь изменяет конфигурацию виджета, поэтому я создал группу приложений и добавил возможности в свое основное приложение, расширение виджета и расширение Intent.

Я могу нормально читать и писать между моим приложением и расширением виджета, однако UserDefaults всегда возвращают nil в IntentHandler.swift, что могло вызвать это?

// called from TimelineProvider
func example() -> String {

let sharedDefaults = UserDefaults.init(suiteName: "group.myname")
  let value = sharedDefaults!.value(forKey: "myKey") as! String
// value == “Hi this works!”
}

Но когда я вызываю example() из моего IntentHandler, значение nil. (Вылетает)


person Kipnoedels    schedule 11.10.2020    source источник
comment
Дважды проверьте возможность намерения или удалите ее и добавьте снова.   -  person EmilioPelaez    schedule 11.10.2020
comment
@EmilioPelaez ... Такая глупая ошибка ????. Он был включен только для режима выпуска, но не для отладки. Мне нужно отдохнуть от этого смеха.   -  person Kipnoedels    schedule 11.10.2020


Ответы (1)


Как прокомментировал EmilioPelaez, дважды проверьте возможности (даже если вы уже это сделали, я этого тоже не заметил). Моя группа приложений была включена только для режима выпуска, а не для отладки. Должен был заметить это раньше ...

person Kipnoedels    schedule 11.10.2020