【问题标题】:Detecting system alert button tapped in SwiftUI检测在 SwiftUI 中点击的系统警报按钮
【发布时间】:2021-09-16 21:42:27
【问题描述】:

在 SwiftUI 中,我想检测用户是否在推送通知系统警报中按下了“允许”按钮。如何检测警报中按下了哪个按钮?

【问题讨论】:

  • 您能否详细说明为什么您需要具体了解哪个按钮被点击了?您不能只是查看权限本身是否在之后被授予?
  • 你说的是哪种系统警报?具体是什么?
  • 我的意思是推送通知警报以获得用户许可。
  • 我想根据用户的决定更新 UI,这就是为什么我想知道点击了哪个按钮。

标签: ios swift swiftui


【解决方案1】:

您可以从UNUserNotificationCenter 调用getNotificationSettings 以获取当前设置。

在您显示系统警报后,在计时器上反复调用此功能,以了解用户是接受还是拒绝。

苹果文档: UNUserNotificationCenter getNotificationSettings

【讨论】:

    【解决方案2】:

    此代码块帮助我检测按下了哪个按钮

    UNUserNotificationCenter.current.requestAuthorization(options: [.badge, .alert, .sound]) { granted, _ in 
    }
    

    【讨论】:

      猜你喜欢
      • 2022-06-15
      • 2021-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-19
      相关资源
      最近更新 更多