protected async override void OnAppearing() { try { var progress = UserDialogs.Instance.Progress(AppResources.MsgLoading); progress.Show(); #region -- FAKE DATABASE -- // var enquetes = EnqueteMock.MockEnquetes(); // var dbEnquete = new Repositorio<Enquete>(); // if (!(await dbEnquete.RetornarTodos()).Any()) // await dbEnquete.InserirTodos(enquetes); // // var usuario = UsuarioMock.MockUsuario(); // var dbUsuario = new Repositorio<Usuario>(); // if (!(await dbUsuario.RetornarTodos()).Any()) // await dbUsuario.Inserir(usuario); // // var amigos = AmigoMock.RetornaListaMockAmigo(); // var dbAmigo = new Repositorio<Amigo>(); // if (!(await dbAmigo.RetornarTodos()).Any()) // await dbAmigo.InserirTodos(amigos); #endregion #region -- Atualiza Categorias this.BindingContext = model = App.Container.Resolve<ColetaDadosViewModel>(); var dbCategoria = new Repositorio<Categoria>(); var ultimaCategoria = -1; if (await dbCategoria.ExisteCategoria()) ultimaCategoria = (await dbCategoria.RetornarTodos()).OrderByDescending(c => c.Id).First().Id; var categorias = await this.model.RetornarCategoriasDoServidor(ultimaCategoria); await dbCategoria.InserirTodos(categorias.ToList()); try { var _categorias = await dbCategoria.RetornarTodos(); foreach (var item in categorias) { if (!String.IsNullOrEmpty(item.Imagem)) await DependencyService.Get<ISaveAndLoadFile>().BaixaImagemSalvarEmDisco(item.Imagem, Constants.baseImageAddress); } } catch (Exception ex) { Insights.Report(ex); } #endregion //Simula o carregamento de dados. Device.StartTimer(TimeSpan.FromMilliseconds(500), () => { if (progress.IsShowing && progress.PercentComplete < 100) progress.PercentComplete = progress.PercentComplete + 10; else if (progress.IsShowing && progress.PercentComplete >= 100) { progress.Hide(); IsLogado(); } return true; }); } catch (Exception ex) { Insights.Report(ex); } }