イライラする問題があるので、本当にあなたの助けが必要です。定期的なエージェント(OnInvoke)でデータをダウンロードしています。正常に動作しますが、毎晩、データをダウンロードするWebサイトにダウンロードするデータがありません。その場合は、ライブタイルを(空になるのではなく)現在のデータのままにして、更新されないようにします。その後、1〜2時間後、ダウンロードして解析するデータがある場合は、更新を続行する必要があります。
私はこれを試しましたが、NotifyCompleteが呼び出されたとき、まだ実行された後のコードです。NotifyCompleteは、実行される残りのコードを停止することになっているのではありませんか?
MatchCollection matchesMyData = rxMyData.Matches(strHTML);
foreach (Match matchMyData in matchesMyData)
{
GroupCollection groupsMyData = matchMyData.Groups;
//Code for handling downloaded data
}
if (matchesMyData.Count < 1)
{
ShellToast toast = new ShellToast();
toast.Title = "No update: ";
toast.Content = "Webservice returned no data";
toast.Show();
NotifyComplete();
}
また、次のコードを試しましたが、バックグラウンドタスクが停止し、アプリを再起動して再度有効にする必要がありました。なんで?
ShellTile TileToFind = ShellTile.ActiveTiles.FirstOrDefault(x => x.NavigationUri.ToString().Contains("TileID=2"));
if (TileToFind != null && intCount > 0)
{
//Update the live tile
}
したがって、データが解析されない場合、タイルはそのままで、1〜2時間後にデータがダウンロードされると、すべてが正常に戻り、タイルビーが更新されます。
これは現在ショーストッパーですので、助けてください。前もって感謝します。