【问题标题】:Local notification stopped appearing?本地通知停止出现?
【发布时间】:2012-05-26 10:02:33
【问题描述】:

我最近为客户端做了一个包含本地通知的应用程序。在原始版本中,通知工作得非常好。但是当客户端尝试发布另一个版本时,只更改了图像和数据库资源,没有更改代码,通知停止工作。现在我一直在尝试调试代码,但一无所获。一切似乎都很好,但没有通知。同时,如果我运行早期的构建,它会完美运行。你能帮我看看有什么问题吗?非常感谢您的宝贵时间。

NSTimeInterval diffTimeIntervalSinceNow = timeInterval; //time-interval after which notification should appear


    UILocalNotification *localNotification = [[UILocalNotification alloc] init]; //Create the localNotification object
    [localNotification setFireDate:[NSDate dateWithTimeIntervalSinceNow:diffTimeIntervalSinceNow]]; //Set the date when the alert will be launched using the date adding the time the user selected on the timer
    //[localNotification setRepeatInterval:notificationInterval];

    [localNotification setAlertAction:@"Launch"]; //The button's text that launches the application and is shown in the alert
    [localNotification setAlertBody:alertBody]; //Set the message in the notification from the textField's text
    [localNotification setHasAction: YES]; //Set that pushing the button will launch the application
    [localNotification setApplicationIconBadgeNumber:[[UIApplication sharedApplication] applicationIconBadgeNumber]+1]; //Set the Application Icon Badge Number of the application's icon to the current Application Icon Badge Number plus 1

    [[UIApplication sharedApplication] cancelAllLocalNotifications];
    [[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; //Schedule the notification with the system
    [localNotification release];

这是我一直在使用的代码。但这与在早期版本中运行的代码完全相同。

【问题讨论】:

    标签: ios5 uilocalnotification


    【解决方案1】:

    我更正了您的代码:- 试试这个:- 在按钮操作中或在任何方法中

      [[UIApplication sharedApplication] cancelAllLocalNotifications];
           NSTimeInterval diffTimeIntervalSinceNow = timeInterval; //time-interval after which notification should appear
    
    
                UILocalNotification *localNotification = [[UILocalNotification alloc] init]; //Create the localNotification object
                [localNotification setFireDate:[NSDate dateWithTimeIntervalSinceNow:diffTimeIntervalSinceNow]]; //Set the date when the alert will be launched using the date adding the time the user selected on the timer
                //[localNotification setRepeatInterval:notificationInterval];
    
                [localNotification setAlertAction:@"Launch"]; //The button's text that launches the application and is shown in the alert
                [localNotification setAlertBody:alertBody]; //Set the message in the notification from the textField's text
                [localNotification setHasAction: YES]; //Set that pushing the button will launch the application
                [localNotification setApplicationIconBadgeNumber:[[UIApplication sharedApplication] applicationIconBadgeNumber]+1]; //Set the Application Icon Badge Number of the application's icon to the current Application Icon Badge Number plus 1
    
    
                [[UIApplication sharedApplication] scheduleLocalNotification:localNotification]; //Schedule the notification with the system
                [localNotification release];
    

    为此工作:- 在 App 委托中检查此方法是否获取某些事件

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

    要取消所有通知,请在

    中使用

    【讨论】:

    • 没有任何改变。我猜代码没问题,因为我将两个类都与“fileMerge”进行了比较,根本没有区别。
    【解决方案2】:

    可能是你的客户端也修改了alertBody,新的alertBody的长度太长了?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多