0

UILocalNotification 事件触发时,我需要暂停播放音乐。

有人建议我使用以下代码。

你可以在这里看到我的帖子

这是代码

- (void)btnSetupNotificationClicked:(id)sender
{
    UILocalNotification* pOrderCompletedNotification=[[UILocalNotification alloc] init];
    if(pOrderCompletedNotification!=nil)
    {
        [pOrderCompletedNotification setFireDate:[[NSDate alloc] initWithTimeIntervalSinceNow:5.00]];
//      [pOrderCompletedNotification setApplicationIconBadgeNumber:1];
        [pOrderCompletedNotification setTimeZone:[NSTimeZone systemTimeZone]];
        [pOrderCompletedNotification setSoundName:@"OrderCompleted.m4a"];
        [pOrderCompletedNotification setAlertBody:@"Order Completed"];
        [pOrderCompletedNotification setAlertAction:nil];
        [pOrderCompletedNotification setHasAction:NO];

        UIApplication* pApplication=[UIApplication sharedApplication];
        if(pApplication!=nil)
        {
            [pApplication scheduleLocalNotification:pOrderCompletedNotification];
        }
        else
        {
            NSLog(@"Application singleton allocation error.");
        }

        [pOrderCompletedNotification release];
        [pApplication release];
    }
    else
    {
        NSLog(@"Local notification creation error.");
    }   // if
}

但我不知道我应该在哪里self.player pause用这些方法写我的代码?我需要在 AppDelegate 中连接以下代码吗?

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
    NSLog(@"EVENT from Notification");
}

我该怎么做?

4

2 回答 2

1

您的播放器对象应该在您的 AppDelegate文件中声明,以便当通知触发时您可以使用 self.player 对象并且您可以暂停音乐

于 2013-03-11T05:06:21.777 回答
0

AFAIK,您应该在方法中进行所需的编码

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification

每当用户收到通知时都会调用它。设备收到通知时不会触发任何事件。这是您打开收到的通知时唯一触发的事件。

于 2013-03-11T05:12:22.287 回答