我遇到了一个很奇怪的问题,我找不出根本原因。直到几周前,我们的应用程序还能正常运行,用于ios12和ios13的后台/无声通知。因此,一些背景信息:
在我看来,{“内容可用”:1}从不在ios13上工作,而是在ios12上工作。而且,didReceiveRemoteNotification:fetchCompletionHandler从不在ios13上被调用,但在ios12上被调用。我们使用无声通知(即内容可用:1)的意图是在应用程序处于前台或后台时发生更改时刷新服务中的详细信息。
任何帮助都将不胜感激。
发布于 2020-04-25 00:22:04
我解决了这个问题。然而,在我进入解决方案之前,我想提到的是,我只在iOS13上遇到了这个问题,并且使用了无声通知。相同的代码与具有相同功能的iOS12一起工作。
我们的应用程序有一个单独的屏幕,用于在应用程序第一次启动时请求通知权限。在这个阶段,我们注册了通知设备。下一次,当应用程序启动时,我们不再显示这个屏幕了。为了让它在ios13上工作,我们每次都必须在AppDelegate的didFinishLaunchingWithOptions中重新注册APNS。同样,在iOS12上,无声通知在没有重新注册APNS的情况下工作,但是在iOS13上,我们每次都必须重新注册。
我希望这能帮助其他遇到这个问题的人。
https://stackoverflow.com/questions/61330123
复制相似问题