了解 iOS 通知是否被忽略

And*_*ean 4 notifications objective-c ios localnotification uilocalnotification

有什么方法可以知道本地通知是否已从通知中心取消(例如按 x 按钮)?

是否可以获取通知中心当前可见的所有通知的列表?

Grz*_*ski 5

不,不可能从 Apple 的任何 API 获取通知列表。不,被忽略/关闭的通知没有任何反馈。

如果你想实现这样的逻辑,我建议基于你自己的服务器构建这种类型的逻辑。

  1. 当您发送通知时,您会将有关该通知的信息保留在服务器端。
  2. 当您通过通知打开应用程序(这是可行的)时,您会将信息发送到服务器端。
  3. 当您不是通过通知打开应用程序时,您可以在服务器端使用逻辑检查是否有任何自上次打开应用程序时未确认的通知。

请记住,通知并不总是发送 - 不能保证用户会收到它们,并且如果用户为您的应用程序关闭了通知 - 所有通知都将被视为忽略。为了改进该逻辑,您可能需要向您的服务器发送有关用户通知权限的信息 - 这仍然不能保证他没有在设置中禁用它们:(

长话短说——永远不要基于通知构建任何应用程序核心功能。