バックグラウンドエージェントを使用してプッシュ通知チャネルを再確立する同様のタスクを達成したいと思います。出来ますか?
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();
}