Xamarin.Forms - iOS - 如果用户拒绝通知权限,然后在设置中手动更改,如何获取设备令牌?



安装我们的应用程序后,我们会要求用户允许向他们发送通知。如果他们接受一切正常,我们会得到一个设备令牌等。 我的问题是当用户最初拒绝权限请求时,因此不会调用RegisterForRemoteNotifications,并且我们不会获得设备令牌。这是可以理解的,因为他拒绝了。 但是,如果用户随后在设备设置中手动打开通知,何时会生成设备令牌?我无法再次请求权限,它不会显示请求对话框,并且授予的权限会自动设置为 false。

我知道如何检查是否授予了系统通知权限,但我需要设置设备令牌。谁能解释一下这将如何工作?

从文档中:

在 iOS 和 tvOS 中,您可以通过以下方式为应用启动 APNs 注册 调用 UIApplication 的 registerForRemoteNotifications 方法 对象。在启动时调用此方法作为正常启动的一部分 序列。

您可以从RegisteredForRemoteNotifications方法获取令牌,此方法将在启动时调用。

您需要知道的另一点是,当用户在设置中手动更改权限时,您的应用程序将通过iOS系统手动重新启动

因此,在用户更改设置后,应用将重新启动,然后获取设备令牌。

最新更新