我正在尝试创建一个应用程序,将本地通知作为警报而非横幅提供。但看起来像banner是默认的,我找不到在我的代码上更改它的方法。我可以在应用程序通知设置上更改它并且它可以正常工作,但我希望该配置是默认配置。
这是我用来询问用户发送通知权限的代码:
UIUserNotificationSettings* notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
(顺便说一下,有人知道为什么我不能用这段代码设置图标徽章吗?)
这是我用来创建本地通知的代码:
UILocalNotification* localNotification = [[UILocalNotification alloc] init];
localNotification.fireDate = [NSDate dateWithTimeIntervalSinceNow:segundosTotal];
localNotification.alertBody = timer.nome;
localNotification.soundName = @"Default-28-sec-192kbps.mp3";
localNotification.timeZone = [NSTimeZone defaultTimeZone];
[[UIApplication sharedApplication] scheduleLocalNotification:localNotification];
使用此代码,我获得默认的横幅通知,如何将其更改为警报通知?
答案 0 :(得分:3)
我认为没有办法以编程方式强制系统将通知显示为警报而不是横幅。查看documentation for UILocalNotification
和UIUserNotificationSettings
,我看不到任何可以指定您想要提醒而不是横幅的内容。
由用户调整应用的通知设置 - 我会留给他们决定他们希望如何接收通知。