我正在尝试创建一个股票市场预警应用程序,当一个特定的价格被击中时,它会发出警报。如何从我的应用程序中调用或创建警报?
发布于 2015-08-05 15:39:36
所以,在我看来,你有两种方式..。
1.- 为后台获取注册应用程序
这种方式每隔一段时间(,当达到iOS),您将获得连接互联网的可能性。此时,如果有什么击中,您可以使用发送UILocalNotification
的方法。
如果您只进行本地通知,而无法在应用程序正式关闭时获取信息,则只有在应用程序中时才会收到通知..(警报)。
的缺点--:当股市进入命中的点时,你的警报将不准确,也许你会失去一些警报器,但当iOS背景提取机制决定让你连接时,它已经恢复正常。
2.- 注册您的应用程序以进行推送通知(如@WMios在之前的评论中所建议的那样)
使用推送通知(以我的观点来看)是可行的。
对于这种方法,您需要有一个 webservice 不断地监听股票市场(在这里您可以使用任何技术或语言,因为这与机制的工作无关),并且将用户需要的注册到此服务器中(您将为每个用户的hits记录),每个用户都将拥有自己的 push _IDE 228
(希望将推送通知发送到唯一的设备)注册到您的when服务中,当警报继续进行时,您将向苹果服务器发送一条“特殊”消息(包括消息(将向用户显示的内容)和从用户设备收集的PUSH_ID )。
在网络上有几个关于这方面的教程,所以你不会有问题找到一个好的。
提示:您可能希望从出现的通知中直接将用户重定向到他可以看到为什么触发警报的位置,但是,这取决于您:) 这种方法的缺点是:如果当用户在应用程序内时触发警报(并发送推送通知)。然后通知将不会显示,考虑到这一点,当您决定如何检查这些警报时,用户在您的应用程序。
3.- 这两种方法的混合物--(是的,如果我以前写过其他东西的话是third..even )
这里没有什么可说的,只是通过这种方式,您可以攻击前面两种方法的缺点。
快乐编码!;-)
发布于 2015-08-05 13:47:19
UILocalNotifications是一种可能性
UILocalNotification *notification = [[UILocalNotification alloc] init];
notification.timeZone = [NSTimeZone defaultTimeZone];
notification.soundName = UILocalNotificationDefaultSoundName;
notification.alertBody = @"YOURMESSAGE";
[[UIApplication sharedApplication] presentLocalNotificationNow:notification];
发布于 2015-08-05 13:51:35
迅捷版:
let notification = UILocalNotification()
notification.fireDate = targetDate
notification.timeZone = NSTimeZone.localTimeZone()
notification.applicationIconBadgeNumber = 1
notification.alertAction = "do a task"
notification.alertBody = "New task is waiting for you!"
notification.soundName = UILocalNotificationDefaultSoundName
UIApplication.sharedApplication().scheduleLocalNotification(notification)
https://stackoverflow.com/questions/31834101
复制相似问题