我想要一些关于如何做这样的事情的帮助:
a)用户在我的应用程序中输入字符串集合 b)用户设置优先选择将这些字符串中的一个作为通知发布的频率 c)用户"开启"通知 在此代码中,它将根据用户在上述b)中提到的首选项中输入的内容,设置将来发生x秒的通知。 d)用户退出应用程序 e)在未来的时间点,通知会被触发。
----我有以上的想法-----
现在,当触发该通知时,我想自动设置一个新的通知,该通知具有alertBody数组中的下一个字符串(或我使用的任何结构),用户在上面a)中输入。我希望在没有用户启动我的应用程序的情况下发生这种情况,理想情况下,如果事先通知尚未被解除,则此新通知应替换旧通知(或者可能显示在通知列表中)。 / p>
你如何在iOS"背景中做这样的事情"无需用户打开应用程序来安排和配置下一个通知?
答案 0 :(得分:0)
我会调查NSUserDefaults
。对于相对低复杂性的持久存储要求,它通常是一种简单的方法(其他更复杂的替代方案是本地文件,Core Data,SQLite或Web服务)。根据您的描述,我会在应用程序进行后台处理时设置通知(即App Delegate)。请注意,您的应用程序只有64个计划的本地通知可供使用,因此您必须设置64个循环for
循环,然后循环遍历您的字符串数组并为每个循环计划通知。如果您的字符串数组超过64,我相信您最好的选择是希望您的用户在64个通知中打开您的应用程序,以便您可以设置下一批。您需要创造性地找到一种方法来跟踪您当前在阵列中的哪个字符串,也许根据最后一批通知的设置时间进行一些数学运算(也可以存储在{{1}中})和每个通知之间配置的间隔。