警报的通知仅在后台触发

时间:2012-10-17 14:56:18

标签: iphone ios

我正在创建一个警报应用程序,因为我已经创建了显示消息和播放声音的通知。但现在它只在后台工作,我必须最小化我的应用程序以触发我的通知,如果我的应用程序打开然后通知没有显示。

通知代码是:

- (void)viewDidLoad
{
    [super viewDidLoad];
    dateTimePiker.date = [NSDate date];
}

- (void)scheduleLocalNotificationWithDate:(NSDate *)fireDate
{
    UILocalNotification *notification = [[UILocalNotification alloc] init];

    notification.fireDate = fireDate;
    notification.alertBody = @"Wake up";
    notification.soundName = @"ma.mp3";
    [[UIApplication sharedApplication] scheduleLocalNotification:notification];
}

- (IBAction)SetAlarmBtnTapped:(id)sender {

    .....
    .....
    [self scheduleLocalNotificationWithDate:dateTimePiker.date];
}

1 个答案:

答案 0 :(得分:0)

在您的app delegate上实施application:didReceiveLocalNotification:

来自文档:

  

如果应用程序在前台运行,则没有警报,   徽章或声音;相反,   application:didReceiveLocalNotification:如果调用方法   代表实现它。