Я хочу проверить параметр "Push Notification" на устройстве iOS, в любое время, если приложение запущено (или включено в режиме возобновления). Я использую следующий код для проверки, если опция выключена:
-(void)PushNotificationServiceChecking
{
UIRemoteNotificationType types = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
if (types == UIRemoteNotificationTypeNone)
{
NSString *msg = @"Please press ON to enable Push Notification";
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Push Notification Service Disable" message:msg delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"ON", nil];
alert.tag = 2;
[alert show];
}
}
Затем я использую следующий код для перехода на вкладку "Настройки" → Центр уведомлений ", чтобы пользователь мог на нем вручную:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (alertView.tag == 2)
{
if (buttonIndex == 0)
{
// this is the cancel button
}
else if (buttonIndex == 1)
{
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeSound|UIRemoteNotificationTypeAlert)];
}
}
}
Но теперь проблема, с которой я столкнулся, появляется только в первый раз после запуска приложения. Он работает так, как я хочу. Но после этого, если я выключу опцию "Push Notification" из "настроек", она не выдаст "Сообщение о предупреждении".