【问题标题】:I do not know how this method is not getting execute我不知道这个方法是如何不被执行的
【发布时间】:2015-09-14 07:48:20
【问题描述】:
 UILocalNotification *notification = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
    if (notification) {
        NSLog(@"app recieved notification from remote%@",notification);
        [self application:application didReceiveRemoteNotification:(NSDictionary*)notification];
    }else{
        NSLog(@"app did not recieve notification");
    }

这里我得到应用程序没有收到通知方法为什么?

【问题讨论】:

  • 这不是您提出正确问题的方式,显示一些代码,实际上是否有任何通知,提供更多详细信息。
  • (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{ NSLog(@"%@",userInfo);}
  • (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{ NSLog(@"%@",userInfo);} 我调用它并打印了 userinfo 的值,但经过一些没有执行的时间
  • 不要将代码添加到 cmets。使用相关详细信息更新您的问题。
  • UILocalNotification notification = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; if (notification) { NSLog(@"app 收到远程通知%@",notification); [自我申请:申请didReceiveRemoteNotification:(NSDictionary)通知]; }else{ NSLog(@"app没有收到通知");在上面的方法中,我得到了输出,因为应用程序没有收到通知,为什么?

标签: ios objective-c


【解决方案1】:

在谈到他们的 SDK 时,首先查阅 Apple 的文档总是一个好主意。

看看这里: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIApplicationDelegate_Protocol/

你会看到这个摘录:

当远程通知到达时,系统调用 应用程序:didReceiveRemoteNotification:fetchCompletionHandler: 方法。通知通常表明有新的可用 信息。在您的应用委托方法中,您可能会开始下载 来自服务器的新数据,以便您可以更新应用程序的数据 结构。您也可以使用通知来更新您的用户 界面。

如果你使用的不是推送通知,而是本地通知,那么你需要这个方法:application:didReceiveLocalNotification:

方法没有被执行的原因是没有收到远程通知。

【讨论】:

  • 是的,我知道它没有收到通知,但为什么我没有收到它
  • 通知到达但方法没有被调用还是通知没有到达?如果是后者 - 您需要关注的是 APN 方面,而不是应用程序。
  • NSDictionary *apnsBody = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]; if (apnsBody) { // 用 apnsBody 做你的代码 NSLog(@"%@apnsbody",apnsBody); } else{ NSLog(@"nullvalue"); apnsbody 为什么我得到空值?
猜你喜欢
  • 2012-10-16
  • 2021-08-13
  • 1970-01-01
  • 2015-11-14
  • 2021-03-06
  • 1970-01-01
  • 2021-07-29
  • 2022-11-30
相关资源
最近更新 更多