ios - RegisterUserNotificationSettings 干扰网络请求

标签 ios xamarin.forms push-notification

当我调用 RegisterUserNotificationSettings 并且在调用周围发出了 Web 请求时,在我单击“不允许”或“允许”后,我收到错误消息,显示“任务已取消” ”

所以,首先这个...

var settings = UIUserNotificationSettings.GetSettingsForTypes(
                UIUserNotificationType.Alert |
                UIUserNotificationType.Badge |
                UIUserNotificationType.Sound,
                new NSSet());

 UIApplication.SharedApplication.RegisterUserNotificationSettings(settings);

然后,在对话框消失后,现有的 Web 请求显然被取消。

有什么想法为什么会发生这种冲突吗?看来是线程问题。

最佳答案

我似乎通过确保调用 RegisterUserNotificationSettings 和发出网络请求之间有一个小的时间间隔来解决这个问题。例如在创建发出 Web 请求的 View Controller 之前调用它,或者在某些 Web 请求完成后调用它。

它必须在 UI 线程上调用,否则警报框不会出现,并且它似乎会踩踏现有的 Web 请求或在调用它和出现对话框之间启动的 Web 请求。

多么粗鲁的 API 调用。

关于ios - RegisterUserNotificationSettings 干扰网络请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57364381/

相关文章:

ios - JSON 解析文本为编码形式

xaml - XAML 资源字典中的算术运算

node.js - 使用 IO 套接字和 nodejs 在 flutter 中推送通知

android - 在android中点击通知进入我的应用

ios - 在 Swift 扩展方法(数组)中使用未声明的类型 'Element'

ios - 如何以编程方式在 ios 中创建 PPTP VPN 连接?

ios - 加速度计读数有多少字节?

xaml - Xamarin.Forms:单击 ListView 中的项目时如何显示模式?

ios - Xamarin表格显示温度值

ios - 为什么要在 didFinishLaunchingWithOptions 中使用 UIApplicationLaunchOptionsRemoteNotificationKey?