【问题标题】:PUSH issue in iOS10 and swift 3iOS10 和 swift 3 中的 PUSH 问题
【发布时间】:2017-07-13 12:15:01
【问题描述】:

当我的应用程序处于前台并收到推送通知时,它会在屏幕上显示通知。一段时间后(2-3 秒),如果用户不点击通知,它就会出现,所以我的问题是,如果用户不点击通知,我该如何处理推送通知。 当应用在前台 ios 10.0*

例如,如果用户在另一台设备上登录,我将收到 如果应用程序在前台,则在先前登录的设备上通知 用户将看到在另一台设备上登录的通知,如果 用户点击通知它会移动到登录屏幕,但是如果 用户不要点击通知

【问题讨论】:

  • 在示例中,您说为同一用户检测到不同的登录。这意味着已经登录到设备 A 的用户将看到在设备 B 上检测到登录的通知。 .. 那么为什么在点击通知后他会被重定向到设备 A 上的登录屏幕?
  • 是的,我想正如你所说的那样,同一个用户被重定向到登录屏幕以供其他用户登录意味着自动注销
  • 好的,收到您的询问。但是你为什么要让用户退出呢? (如果他们没有点击通知)。此链接会有所帮助:developer.apple.com/documentation/usernotificationsui/…
  • @Prashant 你能给我使用 UNNotificationContentExtensionResponseOptionDismissAndForwardAction
  • developer.apple.com/documentation/usernotificationsui/… 我相信这会对您有所帮助,您可以触发该方法来注销用户并显示登录屏幕。

标签: ios swift


【解决方案1】:

您可以在您的应用中添加一个 ViewController 来保存推送通知的数据。当用户导航到那里时,他们可以查看它们。

【讨论】:

  • 我不想保存数据,假设我推动注销并且用户没有点击我能做什么
  • 您的意思是要发送推送通知以注销用户?
【解决方案2】:

推送通知的持续时间是系统默认属性。默认行为是显示 2-3 秒,如果未点击则自动关闭。您无法更改推送通知本身的持续时间。

以前,有一个技巧,您可以为通知设置更长的自定义声音,它可以在屏幕上保持长达 30 秒,但这是 5 年前的事情。我怀疑这仍然可以在今天的 iOS 10.0 中使用

【讨论】:

  • @JaydeepVyas 推送通知不能永远留在屏幕上。以前最大超时设置为 30 秒。所以无论如何它总是会在 30 秒内被关闭。
  • 如果你想让用户看到通知,不惜一切代价,我建议你使用交互式通知。此链接可能对您有所帮助:igeeksblog.com/how-to-use-interactive-notifications-in-ios-10
  • @Prashant 你能理解我的问题吗,如果通知消失后没有点击,我希望用户退出
  • @JaydeepVyas 因此,在您的情况下,您发送此推送通知是为了告诉用户他的帐户是从另一台设备登录的,对吧?因此,只需处理注销用户的推送通知并将他带回登录页面。
  • 好的,收到您的询问。但是你为什么要让用户退出呢? (如果他们没有点击通知)。此链接会有所帮助:developer.apple.com/documentation/usernotificationsui/…
猜你喜欢
  • 1970-01-01
  • 2017-02-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-18
  • 1970-01-01
  • 1970-01-01
  • 2017-02-17
相关资源
最近更新 更多