【问题标题】:notification for Apple wallet pass updates delivered quietly and with no notification bannersApple 钱包通行证更新通知悄无声息地传递,没有通知横幅
【发布时间】:2020-10-07 15:43:24
【问题描述】:

我想实施解决方案,以便在收到 Apple 钱包通行证更新时主动通知用户。我已经实现了所有的 passkit 服务器 api,并且大多数东西似乎都可以正常工作。唯一的问题是传入的通知只能“安静地”提供给用户。这意味着当更新出现在锁定屏幕和通知中心时,设备不会唤醒屏幕,也不会播放振动/声音,也不会显示横幅。

我尝试了不同的更新方法,即使在浏览类似案例时,我也发现几乎没有一个地方提到没有横幅更新通行证(但那里的问题似乎更复杂并且没有解决方案 - https://developer.apple.com/forums/thread/65986)说明横幅。

我可以看到两种通知中心更新

  • 一个用于使用changeMessage(带/不带可选%@字符串)的任意字段更改:

来自pass.json 的示例更新更改片段(通知横幅随后以通常的方式显示在通知中心,但只是静默传递)

{
  "eventTicket" : {
    "headerFields" : [{
      "key" : "code",
      "value" : "The Code",
      "changeMessage": "Code changed to: %@"
  }]
}
  • 第二次更新relevantDate 和/或location 字段,通知中心顶部显示通知横幅,显示点击通过 - 通知传递仍然是无声的(没有锁定屏幕唤醒,也没有声音/振动)。

来自pass.json的示例更新更改片段:

{
  "locations": [{
    "longitude" : 20.000,
    "relevantText" : "the location!",
    "latitude" : 50.000
   }]
}

我检查了钱包通知设置并选择了所有三个选项(锁定屏幕、通知中心和横幅)。我正在寻找一些正在解决的类似问题,一些关于活动(锁定屏幕唤醒/声音/振动)通过更新通知的指南,或者至少一些明确的描述,描述如果/如何/为什么这个功能是不可能的。

更新: 以上适用于 iOS 13.5.2 的 iPhone 6s 设备

在带有 iOS 13.7 的 iPhone 8 上,changeMessage 更新相同的更改会触发锁定屏幕唤醒,并且徽章也会出现,但仍然没有声音/振动。同样对于relevantDate 更新,没有锁定屏幕唤醒,也没有横幅/声音/振动。

【问题讨论】:

    标签: ios apple-push-notifications passbook passkit


    【解决方案1】:

    您在更新中描述的行为是钱包的当前行为。相关的日期和位置信息一直是被动的,因为它们旨在让您在正确的时间到达正确的地点时更容易找到卡片(例如,航班当天在机场,或在星巴克排队时)。

    更改消息更新被视为活动更新。它们在到达时会振动和/或发出声音,但苹果在几个版本前将其简化为简单地唤醒手机并在锁定屏幕上显示。作为发行人,您无能为力,客户也无法通过手机改变这种行为。

    我能给出的最佳建议是向 Apple 反馈您的用例以及为什么发出声音或振动会为用户提供更好的体验。

    【讨论】:

    • 真棒回答谢谢!只是想知道您是否知道 iOS 版本之间的锁屏唤醒行为实际上是否存在差异,这可能是一些本地错误(例如需要一些清理)?
    • 根据记忆,我认为他们在 iOS11 中开始将更改消息通知设为静音,我们当时报告了它,但我相信这是一个故意的更改。早期版本会发出声音和振动。
    • 我也在寻找反馈提交,但不确定哪种方式最合适。尽管我现在正在研究一个非常独特的用例,但我认为这在未来可能会成为一个合理的用例,所以我很乐意提交反馈。
    • 我花了一段时间才弄清楚我需要一个反馈助手应用程序:) 谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多