Exemplo n.º 1
0
        private async void compartilhaImagemAsync(string nome_arquivo_completo)
        {
            var permission = await PermissionHelper.CheckAndRequestPermission(new Permissions.StorageWrite());

            string caminho = Path.Combine(FileSystem.CacheDirectory, "teste.jpg");

            if (InternetConnectivity())
            {
                using (var Dialog = UserDialogs.Instance.Loading("Compartilhando...", null, null, true, MaskType.Clear))
                {
                    try
                    {
                        var retorno = await apiService.DownloadFileAsync(nome_arquivo_completo);

                        File.WriteAllBytes(caminho, retorno.ToArray());
                    }
                    catch (Exception ex)
                    {
                        UserDialogs.Instance.Toast("Erro ao baixar imagem para compartilhamento");
                    }
                }

                compartilhaImagem(caminho);
            }
        }
Exemplo n.º 2
0
        private async Task pegaDirecao(Unidade unidade)
        {
            var permission = await PermissionHelper.CheckAndRequestPermission(new Permissions.LocationAlways());

            if (permission == PermissionStatus.Granted)
            {
                var options = new MapLaunchOptions {
                    NavigationMode = Xamarin.Essentials.NavigationMode.Driving
                };

                var adress    = unidade.Endereco + ", " + unidade.Cep;
                var locations = await Geocoding.GetLocationsAsync(adress);

                var location = locations?.FirstOrDefault();

                if (location != null)
                {
                    await Map.OpenAsync(location, options);
                }
            }
            else
            {
                UserDialogs.Instance.Toast("Para obter a localização você precisa permitir o uso da geolocalização.");
            }
        }
Exemplo n.º 3
0
        private async void AddBook(AddBookClickedMessage msg)
        {
            var permissionStatus = await PermissionHelper.CheckAndRequestPermission(Plugin.Permissions.Abstractions.Permission.Storage);

            if (permissionStatus != Plugin.Permissions.Abstractions.PermissionStatus.Granted)
            {
                await DisplayAlert("Permission not granted", "Cannot open book without storage permissions.", "OK");

                return;
            }

            var pickedFile = await CrossFilePicker.Current.PickFile();

            if (pickedFile == null)
            {
                return;
            }

            await OpenPickedBook(pickedFile);
        }
Exemplo n.º 4
0
        private async void AddBook(AddBookClickedMessage msg)
        {
            var permissionStatus = await PermissionHelper.CheckAndRequestPermission(Plugin.Permissions.Abstractions.Permission.Storage);

            if (permissionStatus == Plugin.Permissions.Abstractions.PermissionStatus.Granted)
            {
                var pickedFile = await CrossFilePicker.Current.PickFile();

                if (pickedFile != null)
                {
                    try {
                        var book = await _bookshelfService.AddBook(pickedFile);

                        if (book.Item2)
                        {
                            Bookshelf.Children.Add(new BookCard(book.Item1));
                        }
                        this.SendBookToReader(book.Item1);
                    } catch (Exception e) {
                        var ext = string.Empty;
                        if (!string.IsNullOrEmpty(pickedFile.FileName))
                        {
                            ext = pickedFile.FileName.Split('.').LastOrDefault();
                        }
                        Analytics.TrackEvent("Failed to open book", new Dictionary <string, string> {
                            { "Extension", ext }
                        });
                        Crashes.TrackError(e, new Dictionary <string, string> {
                            { "Filename", pickedFile.FileName }
                        });
                        await DisplayAlert("Error", "File failed to open", "OK");
                    }
                }
            }
            else
            {
                await DisplayAlert("Permission not granted", "Cannot open book without storage permissions.", "OK");
            }
        }