ios本地通知同时通知但不同日期的不同警报消息

Posted

技术标签:

【中文标题】ios本地通知同时通知但不同日期的不同警报消息【英文标题】:Ios local notification at same time but different alert message for different date 【发布时间】:2015-08-24 14:29:06 【问题描述】:

我想要一个每日报价的示例代码,它会在一年中的每一天获得本地通知,并给出不同的消息/报价

【问题讨论】:

【参考方案1】:

最好在循环中为每一天添加不同的UILocalNotificaitons,创建一个参考数据让我们说今天然后循环 365 次并在每次迭代中添加一天的 timeInterval 将它们注册到应用程序,像这样

var messages:[String] = [/*Add messages here*/]
        var date = NSDate()
        let dayTimerInterval:NSTimeInterval = (60 * 60 * 26)
        date = date.dateByAddingTimeInterval(dayTimerInterval)

    for i in 0..<messages.count
    
        let localNotif = UILocalNotification()
        localNotif.alertBody = messages[i]
        localNotif.fireDate = date
        date = date.dateByAddingTimeInterval(dayTimerInterval)
        UIApplication.sharedApplication().scheduleLocalNotification(localNotif)
    

还有另一种方法可以通过一个通知来做到这一点,当本地通知触发并且用户打开应用程序时,您可以通过获取其引用来更改其消息...但是为此您需要运行应用程序。你可以用不同的方式做到这一点

1.你的应用收到一个localNotification

func application(application: UIApplication, didReceiveLocalNotification notification: UILocalNotification)
        
            notification.alertBody = "new message"
        

您的应用通过本地通知启动

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool 
            // Override point for customization after application launch.
            if let options = launchOptions 
                // Do your checking on options here
                let notif:UILocalNotification = options[UIApplicationLaunchOptionsLocalNotificationKey] as! UILocalNotification!
                notif.alertBody = "new alert boxy"
            
            return true
        

但在这两种情况下,您都有可能错过它们,因为这两种情况都不能保证每次都得到保证,所以每天添加不同的通知。

【讨论】:

你能举个例子吗 不同日子的不同消息

以上是关于ios本地通知同时通知但不同日期的不同警报消息的主要内容,如果未能解决你的问题,请参考以下文章

本地通知:使用任意警报消息和增量徽章“永久”重复

在本地通知 iOS 上每天在警报正文中设置随机消息的问题

不同日期的本地通知 Swift 3

iOS 推送通知本地化

ios 本地通知与消息推送

ios 本地通知与消息推送