Push-уведомления в Mavericks iOS Simulator
Я ничего не могу найти об этом, и я никогда ничего не делал с push-уведомлениями (но я смутно знаю, как они работают). В Mavericks, теперь, когда OS X может получать push-уведомления от различных вещей, таких как веб-сайты, может ли iPhone Simulator получать push-уведомления? Я нашел много ответов с середины 2013 года и ранее, говоря "нет", но все они устарели, потому что Mavericks был недавно выпущен с новыми функциями push.
Я собираюсь начать работать на приложение для школьного проекта, которое должно использовать push-уведомления, если я не хочу быть дешевым и просто опрашивать сервер. Я понимаю, что вам нужна учетная запись разработчика iOS для использования push-уведомлений, но было бы намного проще, если бы я мог протестировать на своем компьютере.
6 ответов
нет, по-прежнему нет API для поддержки push-уведомлений в симуляторе. Вам придется использовать устройство.
iOS 8 и Xcode 6 действительно добавили некоторую дополнительную интеграцию для push-уведомлений. Если вы выберете iPhone 6 или iPhone 6 Plus simulator, ваше приложение теперь появится в разделе "Настройки" с полнофункциональным экраном настроек уведомлений (см. прилагаемый) и отобразит модальное приложение при запросе разрешений push-уведомлений в первый раз. Это справедливо только для iPhone 6 и iPhone 6 Plus тренажеры.
однако в iOS 8 вы все равно получите сообщение в консоли, поскольку "удаленные уведомления не поддерживаются в симуляторе", и поэтому вам нужно использовать только устройство.
несмотря на то, что iPhone 6 и iPhone 6+ симуляторы имеют настройки для push-уведомлений и даже показывают вам приглашение push-уведомлений, попытка зарегистрироваться для push-уведомлений от симулятора по-прежнему не удается с Error Domain=NSCocoaErrorDomain Code=3010 "remote notifications are not supported in the simulator" UserInfo=0x7fc786b4af90 {NSLocalizedDescription=remote notifications are not supported in the simulator}
. Таким образом, ваш лучший выбор-использовать устройство.
Если вы хотите имитировать push-уведомления в симуляторе iOS, вы можете использовать эту библиотеку:https://github.com/acoomans/SimulatorRemoteNotifications
обновление XCode8 GM Release
Log: Push-уведомления теперь терпят неудачу со старым навязчивым стихотворением:
remote.
notifications are not.
supported in the simulator.
теперь я сомневаюсь в себе и своем здравомыслии. Эта особенность, на которую я давно надеялся и на короткое мгновение держал в руке, или мне так показалось. Неужели все это только сон? Кто-нибудь из нас действительно здесь?
Оригинальное Сообщение
как бета iOS10 (Xcode версии бета 8.0 (8S128d)), тренажеры кажутся получение Push-уведомлений. Обратите внимание, что хотя до iOS10 устройства могли получать местные уведомления они не получили пуш уведомления.
у меня нет официального источника на этот счет, просто анекдотично, функции, основанные на push-уведомления, которые раньше не получится, сейчас сменив на iPhone 5, 5С, 6, 6+ тренажеры.
Я также проверил, что мы попали в блок регистрации в AppDelegate.
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings {
NSLog(@"Successfully registered!");
doSomething(notificationSettings);
}
С нетерпением ждем использования удаленных уведомлений в симуляторе, когда выйдет iOS 10.
тем временем я использую командную строку Xcode для проверки поведения уведомлений:
p [((CustomAppDelegateClass *)((UIApplication *)[UIApplication sharedApplication]).delegate) application:[UIApplication sharedApplication] didReceiveRemoteNotification:@{@"aps": @{@"alert": @"Alert Message"}, @"info": @{@"object": @"value"}}];