Документы Apple о политике принятия cookie для NSHTTPCookieStorage сбивают с толку.Понимание политики принятия cookie iOS
Это то, что говорят документы:
NSHTTPCookieStorage реализует одноплодную объект (общий экземпляр), который управляет хранением печенья. Каждый файл cookie представлен экземпляром класса NSHTTPCookie. Как правило, файлы cookie совместно используются всеми приложениями и сохраняются в синхронизации по границам процесса. Файлы cookie сеанса (когда метод isSessionOnly объекта cookie возвращает ДА) являются локальными для одного процесса и не используются совместно.
iOS Примечание: Файлы cookie не распространяются среди приложений в iOS.
Примечание: Изменения, внесенные в политику принятия cookie, влияют на все текущие приложения, использующие хранилище файлов cookie.
И следующее о - (Недействительными) setCookieAcceptPolicy: (NSHTTPCookieAcceptPolicy) aPolicy
по умолчанию куки принять политику является NSHTTPCookieAcceptPolicyAlways. Изменение политики cookie влияет на все текущие приложения, использующие хранилище файлов cookie.
Теперь моя первая мысль заключалась в том, что приложение должно было вызвать setCookieAcceptPolicy, изменение повлияло бы на другие запущенные приложения. Это, похоже, не так. Вызов setCookieAcceptPolicy повлияет только на приложение, которое его вызвало.
Единственная политика cookie, которая применяется ко всем работающим приложениям, - это Safari. В iOS 7 до того, как приложение вызывает setCookieAcceptPolicy, оно использует политику сафари. Поэтому, если политика cookie сафари настроена всегда на блокировку, любое приложение не сможет использовать файлы cookie до тех пор, пока не установит свою собственную политику файлов cookie. Я понимаю, что это вызвало проблемы для многих приложений, так как вышел iOS 7.
Является ли мое наблюдение правильным обо всем этом, или я что-то пропустил?
Редактировать
Я поднял ошибка с Apple, и ждать, чтобы услышать от них сейчас.
Я не могу воспроизвести эту проблему. Я использую iPod с iOS 7.0.4. После того, как я установил политику cookie в настройке Safari, чтобы всегда блокировать и перезапускать мое приложение, которое не устанавливает политику принятия cookie, политика accept cookie по-прежнему остается 'NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain'. –