我想实现类似的任务,我希望使用后台代理重新建立推送通知通道。有可能吗?
我在ScheduledAgent中使用以下代码,但它不起作用。如果我无法访问渠道API,有什么替代方案吗?流行的应用程序如whats-app和其他人如何能够实现这一目标?请帮帮我。
你能告诉我一个替代方案吗?如何在不使用此方法的情况下从我的服务器更新用户他的新内容?
protected override void OnInvoke(ScheduledTask task)
{
//TODO: Add code to perform your task in background
HttpNotificationChannel pushChannel = HttpNotificationChannel.Find("HikeApp");
if (pushChannel == null)
{
pushChannel = new HttpNotificationChannel("HikeApp");
// Register for all the events before attempting to open the channel.
pushChannel.ChannelUriUpdated += new EventHandler<NotificationChannelUriEventArgs>(PushChannel_ChannelUriUpdated);
pushChannel.Open();
pushChannel.BindToShellTile();
pushChannel.BindToShellToast();
}
else
{
// the channel was already open, so just register for all the events.
pushChannel.ChannelUriUpdated += new EventHandler<NotificationChannelUriEventArgs>(PushChannel_ChannelUriUpdated);
}
#if DEBUG_AGENT
ScheduledActionService.LaunchForTest(task.Name, TimeSpan.FromSeconds(1));
#endif
NotifyComplete();
}
答案 0 :(得分:0)
根据Unsupported APIs in Background Agents列表,无法在Microsoft.Phone.Notification
命名空间中执行任何操作,其中包括来自预定代理的推送通知的所有内容。