2011-07-07 37 views
1

我正在使用闹钟应用程序,并且在过去的几天里我一直在卡住。我希望你们能帮忙。区分应用程序是否通过UILocalNotification启动

我的问题是;

有什么办法来区分应用程序是通过UILocalNotification alertAction打开还是只是定期打开?

我想使用UILocalNotification创建一个贪睡功能,所以如果用户在LocalNotification上点击动作按钮打开应用程序,则会启动一个贪睡机制(但显然我不希望它启动如果用户经常打开应用程序设置时间或什么)

非常感谢你的帮助!

回答

0

是这是可能的如在UILocalNotifaction class reference

application:didFinishLaunchingWithOptions: 方法中描述的应用程序的代理可以从 传入的选项字典...

获得 UILocalNotification对象

因此,您可以检查选项字典以查看通知是否存在。如果这是应用程序的启动方式。

+0

谢谢!如果我正确地解释了这个问题,那么在ViewController.m中,我可以用UIApplicationLaunchOptionsLocalNotificationKey来询问传入的选项字典,看它是否有通知,对吗?谢谢:) – emama

+0

差不多。此方法在YourAppNameAppDelegate.m文件中定义,因此您将获得字典并在那里执行检查。你可以做一些事情,比如将一个布尔属性添加到应用程序委托中,视图可以检查它是如何启动的。 – Dolbz

相关问题