Обратите внимание, что в iOS 8 вам, вероятно, лучше использовать Safari Password Sharing для решения некоторых случаев использования, которые вызывают эту проблему.
Это не возможно напрямую, но с помощью веб-сайта это возможно.
Для пояснения, пользовательский случай заключается в том, что приложение Objective C хочет прочитать значение cookie, которое было установлено веб-сайтом в мобильном сафари. (т.е., в частности, UIWebView не участвовал в настройке cookie)
Ваше приложение должно сделать это:
- Запустить мобильное сафари, используя [[UIApplication sharedApplication] openURL: url];
- URL должен быть специальным, например. http://yourwebsite.com/give-ios-app-the-cookie
- На вашем веб-сайте при запуске этого URL-адреса выполните перенаправление на схему вашего-app-url-схемы: cookievalue = (например, angrybirds: cookievalue = hh4523523sapdfa)
- когда ваш делегат приложения получает - (BOOL) приложение: (UIApplication *) приложение openURL: (NSURL *) URL-адрес sourceApplication: (NSString *) примечание sourceApplication: (id) аннотация обрабатывает URL-адрес для получения значения cookie
Обратите внимание, что вы не должны делать это автоматически при запуске приложения - пользователь увидит передачу в Mobile Safari и обратно, что не очень удобно для пользователя, и Apple отклонит ваше приложение (Apple также считает это "загрузкой"). личные данные пользователя на сервер без их предварительного согласия "). Было бы лучше сделать это в ответ на пользователя, обращая внимание на пользовательский опыт - например. подождите, пока пользователь нажмет кнопку «Войти», затем сделайте это, и если пользователь не вошел на ваш сайт, http://yourwebsite.com/give-ios-app-the-cookie должен показать пользователю экран входа в систему в Safari. Если пользователь вошел в систему, вы можете кратко показать экран «Автоматический вход в систему ...» на секунду или две в Safari, прежде чем перенаправить пользователя обратно.
Конечно, нет способа заставить это работать с hotmail / gmail / etc - это должен быть ваш собственный сайт.
Кредит идет на Уникальный идентификатор как для мобильного сафари, так и для приложения в iOS за предложение такого подхода.