问题标签 [unusernotificationcenter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 当应用程序处于前台 Swift 3 时获取本地通知
显然,这现在可以通过 ios10 实现:
这个答案基本上说明了执行此操作所需的工具:
我只是不太了解如何将它们组合在一起。
我不知道这有多重要,但我无法保留可选的 func 并且 xcode 希望我将其切换为私有。
我正在尝试展示徽章,文档提供
在这里有点迷失。
然后我假设如果我想从获取这些徽章中排除某个视图控制器并且我没有使用导航控制器,我发现这个代码会起作用吗?:变量窗口:UIWindow?
ios - 使用 UNUserNotificationCenter 支持 iOS 10 丰富的通知,但通知永远不会出现。它只会发出警报
不确定,缺少什么,但我遇到了一个奇怪的问题!!!
通知声音,但不显示。
我已将该应用程序注册为仅显示警报和声音,奇怪的是它从未显示。可以看到通知添加成功。但是,似乎有些琐碎的事情我无法理解。
即使删除通知也有效。
而且,在 AppDelegate...
private let notificationManager = NotificationManager()
ios - iOS 10 本地通知不起作用(迁移到 UserNotifications 框架)
我有一个本地通知在 iOS 9 中运行良好的应用程序。
我正在将应用程序更新到 iOS 10。
升级到 Swift 3 后,我已将本地通知迁移到新的 UserNotifications 框架(我只支持 iOS 10,所以没问题)。
但是,我在这个应用程序中没有收到任何通知。香草应用程序中的相同代码有效。
我已请求对通知进行授权,并且该部分工作正常。
我也尝试过添加 UserNotification.framework 但这没有任何区别。
迁移后看不到通知的原因是什么?
ios - 通知视图中的交互操作在 iOS 10(xcode 8)上不可见
我正在尝试实现通知框架,有谁知道为什么我没有在交互式通知中获得两个操作按钮?当我向左滑动时,我只看到“清除”按钮
提前致谢
ios - 在 iOS 10 中安排和处理本地通知
我一直在做我的一个项目,我允许用户在他们想要的时间安排多个通知。
iOS 10 让我们能够使用 DateComponents 作为通知的触发日期,但我对如何安排和处理多个通知有点迷茫。
每个通知都需要自己的请求,然后又需要自己的标识符,否则您无法创建多个通知。
我想我必须使用标识符来安排和处理通知,但现在我的代码是如此混乱,以至于我一直在认真地问自己是否没有更简单的方法来做到这一点。
根据我的数据模型,通知唯一标识符由以下部分组成:
- 我的模型的 id
- 每次创建新通知时递增的数字
- 上面用下划线分隔
因此,例如,如果我必须为 id 为 3 的对象安排 10 个通知,它将如下所示:3_1, 3_2, 3_3...
每次我收到通知时,我都会循环通过收到的通知来更新我的 UI。当用户希望删除接收到的特定模型的通知时,我会通过检查以相同 ID 开头的标识符来循环接收通知的唯一标识符。
我真的不知道如何才能做到这一点,因为根据文档,删除传递的通知的唯一方法是使用标识符:UNUserNotificationCenter.current().removeDeliveredNotifications(withIdentifiers:)
问题是,它产生了各种各样的问题,虽然我可以很容易地纠正它们,但它看起来很老套。我并不为我所做的事情感到骄傲,我正在寻找更聪明的方法来解决它。我故意没有发布任何代码,因为那不是问题。方法是真正的问题。
我在这里问是因为该UserNotifications
框架非常新,而且我无法找到有关该主题的资源。
任何想法 ?提前致谢。
编辑:这是一些代码。
在该checkDeliveredAndPendingNotifications
方法中,我遍历所有未决和已传递的通知,因此稍后我可以创建一个尚不存在的标识符。我还没有找到另一种为每个通知生成唯一标识符的方法。
由于大部分工作是在另一个异步队列上完成的,所以当他完成工作时,我还创建了一个完成处理程序。然后我在主线程上调用该createNotification
方法(因为我使用的是 Realm,而且我也有义务这样做),它应该创建一个通知。
这里的问题是func add(UNNotificationRequest, withCompletionHandler: (Error?) -> Void)? = nil)
异步工作的方法。所以当我回到我的循环中generateNotifications
返回checkDeliveredAndPendingNotifications
不正确的数据时。好吧,没有错,只是通知尚未创建...
我是一个线程的菜鸟,我被这些操作困住了,我不知道该去哪里。我不确定我是否以正确的方式解决问题。
ios - 等待异步代码完成 Swift
我一直在做我的一个项目,我允许用户在他们想要的时间安排多个通知。我正在使用UserNotifications
iOS 10 中的新功能。
为了正确安排所有通知,每个通知都需要有自己的唯一标识符。我根据我的数据模型组成了我的:
- 我的模型的 id
- 每次创建新通知时递增的数字
- 上面用下划线分隔
因此,例如,如果我必须为 id 为 3 的对象安排 15 个通知,它将如下所示:3_1, 3_2, 3_3...3_15
这是我的做法:
checkDeliveredAndPendingNotifications
确保稍后我将创建尚不存在的标识符。
当它完成工作后,我调用createNotification
which 使用前一个函数返回的字典来生成正确的标识符。
例如,如果有 5 个通知在磁盘上传递,另外 10 个在等待 id 为 3 的模型,它看起来像这样:
这createNotification
只是简单地获取字典中的值并将其增加 1 以创建标识符。
真正的问题是:
这是一个异步任务。考虑到它不会等待,一旦我回到我的循环中,generateNotifications
不会checkDeliveredAndPendingNotifications
返回正确的字典,因为通知没有完成创建。
考虑到上面的例子,如果我必须安排 3 个通知,我想得到这样的东西:
但现在我得到:
那么,我如何才能等待这个异步调用完成,然后再返回我的循环呢?
在此先感谢您的帮助。
ios - 应用程序在后台时无法接收本地通知并且能够在前台接收
在 sharedClass 中
我可以进入前台,但无法进入后台。有人对此有想法吗?
objective-c - 在 XCode 8 中触发本地通知并且模拟器停止工作时生成错误“XPC 连接中断”
我已经更新了 xcode 8,然后我无法获得本地通知。
ios - iOS 10,当应用程序在前台时显示本地通知?
我想在应用程序处于前台时显示通知。下面是我为新的 usernotificationdelegate 方法所做的代码。
在应用程序委托中:
这是我触发本地通知的方法
现在在这样做之后我仍然没有在前台收到通知。
提前谢谢。