private async Task InitializeSDCard() { var devices = KnownFolders.RemovableDevices; var cards = await devices.GetFoldersAsync(); if (cards.Any()) { var external = new FileExplorerViewModel(cards[0]); await App.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => StorageVMs.Add(external)); } }
public VLCExplorerViewModel() { var musicLibrary = new FileExplorerViewModel(KnownFolders.MusicLibrary); StorageVMs.Add(musicLibrary); var videoLibrary = new FileExplorerViewModel(KnownFolders.VideosLibrary); StorageVMs.Add(videoLibrary); CurrentStorageVM = StorageVMs[0]; Task.Run(() => CurrentStorageVM?.GetFiles()); #if WINDOWS_APP Task.Run(() => InitializeDLNA()); _deviceService = App.Container.Resolve<ExternalDeviceService>(); _deviceService.ExternalDeviceAdded += DeviceAdded; _deviceService.ExternalDeviceRemoved += DeviceRemoved; #else Task.Run(() => InitializeSDCard()); #endif }
private async void InitializeDLNA() { try { var dlnaFolders = await KnownFolders.MediaServerDevices.GetFoldersAsync(); foreach (var dlnaFolder in dlnaFolders) { var folder = new FileExplorerViewModel(dlnaFolder); await App.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => StorageVMs.Add(folder)); } } catch { LogHelper.Log("Failed to Get MediaServerDevices"); } }
private async Task AddFolder(string newId) { await DispatchHelper.InvokeAsync(() => { try { if (StorageVMs.All(vm => vm.Id != newId)) { var external = new FileExplorerViewModel(StorageDevice.FromId(newId), newId); StorageVMs.Add(external); } if (StorageVMs.Any()) { CurrentStorageVM = StorageVMs[0]; } } catch { } }); }