【问题标题】:notification launch custom method/class通知启动自定义方法/类
【发布时间】:2013-01-26 02:21:03
【问题描述】:

只是想确保我走在正确的道路上。

我正在创建一个本地通知作为闹钟。当用户点击按钮时......我希望它做事。

我想我必须调用我的方法

  • (BOOL)应用程序:(UIApplication *)应用程序 didFinishLaunchingWithOptions:(NSDictionary *)launchOptions .. .for 当应用程序关闭时

  • (void)applicationWillEnterForeground:(UIApplication *)application ...当应用程序在后台时...当用户点击 OK 时

有没有更好的方法来做我想要完成的事情...当用户点击 OK 通知时做些什么?

提前致谢

【问题讨论】:

    标签: ios uilocalnotification localnotification


    【解决方案1】:

    根据本地和推送通知的文档,在这两种情况下都应该调用application:didFinishLaunchingWithOptions:

    处理本地和远程通知

    让我们回顾一下运营交付时可能出现的情况 应用程序的本地通知或远程通知。

    当应用程序未在前台运行时,会发送通知。 在这种情况下,系统会显示通知、显示警报、标记图标,可能还会播放声音。 作为呈现通知的结果,用户点击警报的操作按钮或点击(或点击)应用程序图标。

    如果点击操作按钮(在运行 iOS 的设备上),系统会启动应用程序并且应用程序调用它的 委托的应用程序:didFinishLaunchingWithOptions: 方法(如果 实施的);它传入通知有效负载(对于远程 通知)或本地通知对象(对于本地 通知)。 如果在运行 iOS 的设备上点击应用程序图标,应用程序会调用相同的方法,但不会提供有关 通知。

    【讨论】:

      【解决方案2】:

      他们不能被强迫打电话。仅监控。

      UIApplicationDelegate 协议

      这些方法为您提供有关关键事件的信息 应用程序的执行,例如何时完成启动,何时启动 即将终止,内存不足,重要变化时 发生。实施这些方法让您有机会回应 这些系统事件并做出适当的响应。

      如果你想你是 ViewController 获取通知那里的方法。试试这个

      [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationDidFinishLaunching:) UIApplicationDidFinishLaunchingNotification object:nil];
      [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationEnterForeground:) name:UIApplicationWillEnterForegroundNotification object:nil];
      
      - (void)applicationDidFinishLaunching:(NSNotification *)noti
      {
          //do stuff
      }
      
      - (void)applicationEnterForeground:(NSNotification *)noti
      {
          //do sutff
      }
      

      【讨论】:

        猜你喜欢
        • 2020-03-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-02-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多