美文网首页
事件检测与本地通知(临时记录)

事件检测与本地通知(临时记录)

作者: 汝阴龙 | 来源:发表于2017-12-11 16:42 被阅读13次

1、最近想做一个日历事件提醒的东西。就是用户可以使用app定义一个事件,到某个时间点提醒用户改做什么事情。

对开发者来说,当用户使用产品时,我们并不知道用户什么会新建一个事件,会新建多少事件。

一开始的思路就是后台起个线程或者说时间超久的timer不断检测事件。考虑到性能,可以直接接入系统的主线程的runloop。但是这么做有个弊端,就是当用户退出程序后,就无法监控事件。

偶尔看到系统提供的这个东西:

UILocalNotification (iOS 8.0之前)

下面是官方文档摘录:

UILocalNotification

Important: UILocalNotification is deprecated in iOS 10. Use UNNotificationRequest instead. A UILocalNotification object specifies a notification that an app can schedule for presentation at a specific date and time.

iOS 10之后,用UNNotificationRequest

我最看重它有一个特点:

app关闭的时候也能接收和显示通知。

但是,其也有限制:

对本地通知的数量限制,iOS最多允许最近本地通知数量是64个,超过限制的本地通知将被iOS忽略。

为什么会有这个限制,我觉得这是把自己的服务注册到了系统的服务队列中去了啊,用户的手机上有那么多的app,系统不可能让你无限制的注册事件的,不然整个系统都会被非系统app的请求给拖垮的。

大家看一下,iPhone自己提供的【提醒】app,即使你从后台退出了这个app,对你自定义的“提醒事件”,不管是“时间到了”的提醒,还是“地理位置”的提醒,系统都会给出及时的响应,甚至是你重启手机都没关系的。从这个可以看出,这个事件是被加入到了iPhone手机的系统服务队列中的啊!

我想把自己的事件注册到系统的服务队列中,或者说实现像iPhone【提醒】app的那样的功能。有谁有好的技术方案,欢迎指教,在此先提前拜谢了。

相关文章

  • 事件检测与本地通知(临时记录)

    1、最近想做一个日历事件提醒的东西。就是用户可以使用app定义一个事件,到某个时间点提醒用户改做什么事情。 对开发...

  • 【20002】Sql Server 常用语法、常用语句

    性能检测语句 临时表 临时表在SysObjects表里是找不到的 本地临时表创建临时表和创建普通表一样,只需要给名...

  • Day 34/100 核酸结束后的小道遐想

    现在是2022.7.19,晚上9.50,记录昨天。 昨天临时又通知三天两筛,昨天是第一次,晚饭后七点多,我看检测点...

  • 临时通知

    作好了上晚自习的计划,没想到一个会议,事情全就变样了。 说是因为雾霾严重,下午提课,两节课后学生离校。通知一出,全...

  • 临时通知!

    本打算周日回家看看老妈的,可是周六晚上单位工作群的临时通知使得这一计划泡了汤,真是计划不如变化快呀! 通知要求全体...

  • 临时检测

    一早突然被告知,八点半核酸检测。 以往都是从7点多开始,老师们先检测,然后是学生们。今天是学生们先检测,老师们上班...

  • 本地通知与远程通知

    一般我们在学习一些新的东西的时候我们必须要问自己几个问题,就举通知的例子 1、什么是通知?2、为什么要用通知? 最...

  • 变化

    单位负责人通知,从下周开始,本地疫情核酸检测将实行定期轮流抽检,在基本不降低检测密度的情况下,缩小了单次检测...

  • 可能碰到的iOS笔试面试题(24) -- 通知与推送

    通知与推送 本地通知和远程推送通知对基本概念和用法?image iOS允许最近本地通知数最大是多少(c) 把程序自...

  • Android按键事件

    一、按键事件App开发对按键事件的检测与处理,主要包括如何检测控件对象的按键事件、如何检测活动页面的物理按键、以返...

网友评论

      本文标题:事件检测与本地通知(临时记录)

      本文链接:https://www.haomeiwen.com/subject/vdgiixtx.html