iOS: в группах приложений отсутствует пользовательский ключ по умолчанию - PullRequest
0 голосов
/ 07 июня 2018

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

Так что на стороне приложения я сохраняю свои значения, какthis:

NSUserDefaults *prefs = [[NSUserDefaults alloc] initWithSuiteName:suite];
[prefs setObject:value forKey:key];
[prefs synchronize];

Свойство suite - это имя моей группы, созданной на портале для разработчиков.Значение - это NSDictionary.

 NSDictionary* savedDict = [prefs objectForKey:key];

Вызов этого дает мне правильные значения

На стороне расширения я использую swift и пытаюсь получить свои UserDefaults как это

let userDefaults = UserDefaults.init(suiteName: "group.cryptochange.favorites")
let savedDict = userDefaults?.dictionary(forKey: "Favorites");

Проблемато, что saveDict равно nil.

Когда я распечатываю все ключи в моих пользовательских настройках по умолчанию, я вижу клавишу «Избранное» на стороне приложения, но если я распечатываю ключи в расширении, этот ключотсутствует.

Кто-нибудь знает, где или в чем может быть проблема?

Заранее спасибо

РЕДАКТИРОВАТЬ 1: Я просто признаю, что это работает с отладочной сборкой, но не когдаЯ изменяю схему на выпуск

РЕДАКТИРОВАТЬ 2: Я только что проверил каталог документов своего приложения и вижу мой файл групп приложений, который содержит значения, которые я сохранил.Когда я смотрю на каталог документов расширения, такого файла нет.Это работает как задумано?После того, как я установил «тестовое» значение в моем коде расширения, появится файл с тестовым значением

1 Ответ

0 голосов
/ 07 июня 2018
  1. Вы должны убедиться: suite = "group.cryptochange.favor" key = "Избранное"

  2. Вы должны проверить, что добавочный номер является членомгрупповое приложение

  3. Вы должны проверить, что "Тип броска" правильный

Надеюсь, мои ответы полезны

...