繁体   English   中英

System.InvalidOperationException:'在 ToastNotification UWP 中调用 LaunchUriAsync 时,在意外时间调用了一个方法

[英]System.InvalidOperationException: 'A method was called at an unexpected time when calling LaunchUriAsync inside ToastNotification UWP

当用户单击 Toast 通知时,我正在尝试使用LaunchUriAsync方法打开具有特定 URL 的浏览器。

问题是应用程序抛出System.InvalidOperationException: 'A method was called at an unexpected time

这只发生在ToastNotificationActivated事件处理程序中。

如果我在ToastNotificationActivated事件处理程序之外执行此方法,则一切正常。

这是代码:

private async void OnActivatedEventHandler<TSender, TResult>(TSender sender, TResult args)
{
  Uri uri = new Uri("...");
  bool success = await Windows.System.Launcher.LaunchUriAsync(uri);
}

有人能解释一下为什么会这样吗?

欢迎任何其他方法来实现类似的目标。

错误消息表示该方法在意外时间被调用。 Launcher.LaunchUriAsync Method的文档中,注释提到-'除非您从 Windows 桌面应用程序调用此 API,否则此 API 必须从 ASTA 中调用(也称为线程)。 ' 你需要在 UI 线程中调用这个方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM