Ios Objective-C局部通知发射两次

Ios Objective-C局部通知发射两次,ios,objective-c,uilocalnotification,Ios,Objective C,Uilocalnotification,我在AppDelegate.m文件中使用-(void)applicationidenterbackground:(UIApplication*)application,我每天都会像这样显示通知: - (void)applicationDidEnterBackground:(UIApplication *)application { UILocalNotification *notification = [[UILocalNotification alloc] init

我在AppDelegate.m文件中使用
-(void)applicationidenterbackground:(UIApplication*)application
,我每天都会像这样显示通知:

- (void)applicationDidEnterBackground:(UIApplication *)application

    {

        UILocalNotification *notification = [[UILocalNotification alloc] init];
        UIApplication *myapp = [UIApplication sharedApplication];

       if (hour > 8 && hour < 10)
       {
                    notification.fireDate = [components date];
                    notification.repeatInterval = 0;
                    notification.soundName = @"";
                    notification.alertBody = @"This is an notification!";
                    [myapp scheduleLocalNotification:notification];
       }
    }
-(无效)应用程序标识符背景:(UIApplication*)应用程序
{
UILocalNotification*通知=[[UILocalNotification alloc]init];
UIApplication*myapp=[UIApplication sharedApplication];
如果(小时>8小时和小时<10小时)
{
notification.fireDate=[组件日期];
notification.repeatInterval=0;
notification.soundName=@;
notification.alertBody=@“这是一个通知!”;
[myapp scheduleLocalNotification:notification];
}
}
除了在用户打开应用程序后触发通知并关闭应用程序外,一切正常,然后关闭应用程序通知将再次触发。是否有一些方法不同于
-(void)applicationIdentinterbackground:(UIApplication*)application
(即使应用程序完全关闭[使用任务管理器终止]),或者我需要用一些代码来解决它


谢谢

当你的应用程序完全关闭后,你就无能为力了。当应用程序进入后台时,您使用的方法是正确的<代码>应用程序将在应用程序终止之前调用。在那之后,就这样了。没有了

在这里,你似乎永远不会删除本地通知,因此如果你打算每天启动一个,而用户在一天内将你的应用最小化两次,那么你最终会安排两个本地通知。每次计划通知时,请查看它在取消通知(或通知过期)之前一直保持计划状态。如果你计划5个,你将收到5个通知。但我手机上的一些应用程序已经完全关闭(双击主页按钮,向上滑动),它们仍然向我发送通知,比如Yahoo weather应用程序或一些游戏,这怎么可能呢?这些被称为推送通知。它们被发送到电话。打开后,他们会启动各自的应用程序。是否可以制作一个每30分钟运行一次的计时器来显示本地通知?是的。如果应用程序在后台或前台仍处于活动状态。如果它已被终止否。你的代码在应用程序之外不存在。因此,要包装它,在应用程序完全关闭时,不可能每天同时向用户发送本地通知?(为所有愚蠢的问题感到抱歉,但我不敢相信苹果不允许这样做)