private async Task <DatabaseDownloadResult> downloadAsync()
 {
     return(await DatabaseDownloader.RunAsync(progress =>
     {
         Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, delegate
         {
             ProgressTextBlock.Text = progress.Message;
             ProgressBar.Value = progress.Percentage;
         });
     }));
 }
Example #2
0
        protected override async void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            if (e.NavigationMode == NavigationMode.New)
            {
                //adatbázis inicializálása első induláskor
                if (!App.TB.DatabaseExists || AppFields.ForceUpdate)
                {
                    await DatabaseDownloader.RunAsync();
                }

                ContentFrame.Navigate(typeof(DefaultPage));

                //frissítés keresése
                var checkUpdateResult = await UpdateMonitor.CheckUpdate();

                if (checkUpdateResult == UpdateMonitor.Result.Found)
                {
                    var dialog = new MessageDialog("A menetrend adatbázis elavult lehet.", "Frissítés elérhető");
                    dialog.Commands.Add(new UICommand {
                        Label = "Frissítés most", Id = true
                    });
                    dialog.Commands.Add(new UICommand {
                        Label = "Emlékeztessen később", Id = false
                    });
                    var res = await dialog.ShowAsync();

                    if ((bool)res.Id == true)
                    {
                        await DatabaseDownloader.RunAsync();

                        var finalDialog = new MessageDialog("A frissítés kész, kérem indítsa újra az alkalmazást.");
                        finalDialog.Commands.Add(new UICommand {
                            Label = "Rendben", Id = true
                        });
                        await finalDialog.ShowAsync();

                        throw new Exception("A frissítés kész, kérem indítsa újra az alkalmazást!");
                    }
                }

                //if (await ApplicationData.Current.LocalFolder.ContainsFileAsync("error.log"))
                //{
                //    var logFile = await ApplicationData.Current.LocalFolder.GetFileAsync("error.log");
                //    string logData;
                //    using (var logStream = await logFile.OpenStreamForReadAsync())
                //    {
                //        logData = new StreamReader(logStream).ReadToEnd();
                //    }
                //    new MessageDialog(logData).ShowAsync();
                //    await logFile.DeleteAsync();
                //}
            }
        }
Example #3
0
        private async void LayoutRoot_Loaded(object sender, RoutedEventArgs e)
        {
            var downloadRes = await DatabaseDownloader.RunAsync(progress =>
            {
                ProgressTextBlock.Text = progress.Message;
                ProgressBar.Value      = progress.Percentage;
            }
                                                                );

            if (DownloadDone != null)
            {
                DownloadDone(this, downloadRes);
            }
        }