У меня возникают проблемы с обменом данными между расширением iOS 8 и приложением-контейнером. Я настроил группу с портала разработки и Xcode, и оба моих списка прав выглядят так:
<dict>
<key>com.apple.security.application-groups</key>
<array>
<string>my group id</string>
</array>
</dict>
Предлагаемое решение в документе Apple для использования [[NSUserDefaults standardUserDefaults]
не работает для меня.
Я пробовал решение @Santa Claus из этого сообщения данные между приложениями с группами приложений для использования
[[NSUserDefaults alloc] initWithSuiteName:@"<group identifier>"];
Решение Санта-Клауса работало на симуляторе, но не на моем iPhone 4s, есть идеи, как заставить его работать на реальном устройстве? Или я что-то упускаю?
Некоторые обновления:
[[NSFileManager defaultManager] containerURLForSecurityApplicationGroupIdentifier:@"group id"];
функция возвращает URL-адрес, и оба URL-адреса из приложения-контейнера и расширения выглядят одинаково, как "path /private/var/mobile/Containers/Shared/AppGroup/3DFB9750-A9F3-4C37-BC3C-0D5BF746B233". Я создал файл json внутри этой папки из приложения-контейнера, но расширение не может найти файл в папке при запуске на устройстве. Но в симуляторе находит хорошо и все работает.
NSUserDefaults
. - person Andrew   schedule 06.06.2014