菜鸟教程小白 发表于 2022-12-12 09:33:55

ios - 输入 applicationDidBecomeActive 时本地通知不起作用


                                            <p><p>我正在使用重复本地通知向用户显示警报。为此,我使用了以下代码</p>

<pre><code>UILocalNotification* localNotification = [ init];
localNotification.fireDate = [ dateByAddingTimeInterval:60];
localNotification.alertBody = @&#34;sss&#34;;
localNotification.alertAction = @&#34;Show me the item&#34;;
localNotification.timeZone = ;
localNotification.applicationIconBadgeNumber = [ applicationIconBadgeNumber] + 1;
[ scheduleLocalNotification:localNotification];
</code></pre>

<p>使用 NSNotification Center 我将每 60 秒调用一次本地通知。它工作正常。</p>

<p>我也在 Appdelegate 中使用以下代码:-</p>

<pre><code> - (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
    {
      NSLog(@&#34;Received&#34;);
      UIApplicationState state = ;
      if (state == UIApplicationStateActive) {

             [ postNotificationName:@&#34;RestartProcess&#34; object:self];

}
application.applicationIconBadgeNumber = 0;
}
</code></pre>

<p>还有</p>

<pre><code>- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    UILocalNotification *locationNotification = ;
    if (locationNotification) {
      // Set icon badge number to zero
      NSLog(@&#34;Yes Notid=fications is predsent&#34;);
      application.applicationIconBadgeNumber = 0;
    }

    return YES;
}
</code></pre>

<p>我的问题是当本地通知开始时,我按下主页按钮然后等待显示。时间段后显示通知消息。
当我点击应用程序图标时,进程停止。之后本地通知不起作用。但是当我点击通知消息时,它会正常工作。我该如何解决这个问题。任何人都可以帮我做到这一点。提前谢谢..</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>didReceiveLocalNotification 仅在您点击通知消息时调用。如果您想在 applicationDidBecomeActive 中执行此操作,则必须手动执行。 </p>

<p>您可以检查角标(Badge)数量(如果通知包含角标(Badge)),例如:</p>

<pre><code>-(void) applicationDidBecomeActive:(UIApplication *)application
{

    if(application.applicationIconBadgeNumber &gt;= 1)
    {
       //Do you stuff here
      application.applicationIconBadgeNumber = 0;

    }
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 输入 applicationDidBecomeActive 时本地通知不起作用,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/23333156/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/23333156/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 输入 applicationDidBecomeActive 时本地通知不起作用