0

按照这个例子(http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202967(v=vs.105).aspx)我已经启用了我的Windows Phone 8应用程序来推送通知。我可以接收通知并调用回调方法PushChannel_ShellToastNotificationReceived。在示例中,此方法会打开一个包含通知内容的消息框。

因此,我可以假设从执行回调的线程执行 UI 相关操作是安全的吗?我看到消息框被包裹在 中Dispatcher.BeginInvoke(() =>,但是我不知道这将在哪个线程中执行,以及我应该从该线程中使用哪些对象。

4

1 回答 1

1

PushChannel_ShellToastNotificationReceived当您的应用程序运行时收到推送通知时,操作系统始终会调用它,因此它将在非 UI 线程上执行。

任何需要执行的 UI 相关代码都必须包含在其中,Dispatcher.BeginInvoke(Action a)否则会出现UnauthorizedAccessException异常。

于 2013-09-06T00:55:18.870 回答