public async Task <string> GetJsonDataSource() { var jsonfilename = await StorageDataHelper.GetJsonFileNameFromMusicLibraryAsync(RootFolder, JsonLocalFileName); if (string.IsNullOrEmpty(jsonfilename)) { Uri dataUri = new Uri(JsonDataUri); HttpClient client = new HttpClient(); using (var response = await client.GetAsync(dataUri)) { var json = await response.Content.ReadAsStringAsync(); await StorageDataHelper.writeTextToSDCard(RootFolder, JsonLocalFileName, json); return(json); } } else { // read from sd card var json = await StorageDataHelper.readTextFromSDCard(RootFolder, JsonLocalFileName); return(json); } }
private async Task <string> DownloadAudioFile() { var pronunciation = ""; switch (AudioType) { case Mp3Type.Unknown: pronunciation = "am_"; break; case Mp3Type.American: pronunciation = "am_"; break; case Mp3Type.English: pronunciation = ""; break; default: pronunciation = "am_"; break; } var part = bookTextKey.Substring(0, bookTextKey.LastIndexOf("-")); var part2 = bookTextKey.Substring(bookTextKey.LastIndexOf("-") + 1); //http://f1.w.hjfile.cn/doc/touch_m/nce/3-41-50/am_yuanwen_42.mp3 //http://f1.w.hjfile.cn/doc/touch_m/nce/3-41-50/yuanwen_42.mp3 var downloadUriString = string.Format("http://f1.w.hjfile.cn/doc/touch_m/nce/{0}/{1}yuanwen_{2}.mp3", part, pronunciation, part2); var fileName = getAudioFileName; var file = await StorageDataHelper.GetAudioFileFromMusicLibraryAsync("WP.NCE", fileName); if (string.IsNullOrEmpty(file)) { var filefullname = await StorageDataHelper.DownloadAudioFileToMusicLibraryAsync(downloadUriString, "WP.NCE", fileName); return(filefullname); } return(file); }
private async void PlayAppBarButton_Click(object sender, RoutedEventArgs e) { bool failed = false; try { await Helper.ShowSystemTrayAsync(Colors.CornflowerBlue, Colors.White, text : "loading audio..."); var file = await StorageDataHelper.GetAudioFileFromMusicLibraryAsync("WP.NCE", getAudioFileName); if (MediaPlayerState.Playing == BackgroundMediaPlayer.Current.CurrentState) { if (!string.IsNullOrEmpty(file)) { string[] fileInfo = new[] { bookTitle, file, bookTextKey, "autoplay" }; var message = new ValueSet { { "samePause-notPlay", fileInfo } }; BackgroundMediaPlayer.SendMessageToBackground(message); await Helper.HideSystemTrayAsync(originbackgroundColor, originforegroundColor, originopacity); } } else if (MediaPlayerState.Paused == BackgroundMediaPlayer.Current.CurrentState) { if (!string.IsNullOrEmpty(file)) { string[] fileInfo = new[] { bookTitle, file, bookTextKey, "autoplay" }; var message = new ValueSet { { "samePlay-notPlay", fileInfo } }; BackgroundMediaPlayer.SendMessageToBackground(message); await Helper.HideSystemTrayAsync(originbackgroundColor, originforegroundColor, originopacity); } } else if (MediaPlayerState.Closed == BackgroundMediaPlayer.Current.CurrentState) { if (!string.IsNullOrEmpty(file)) { string[] fileInfo = new[] { bookTitle, file, bookTextKey, "autoplay" }; var message = new ValueSet { { "Play", fileInfo } }; BackgroundMediaPlayer.SendMessageToBackground(message); await Helper.HideSystemTrayAsync(originbackgroundColor, originforegroundColor, originopacity); } } } catch { failed = true; } if (failed) { await Helper.HideSystemTrayAsync(originbackgroundColor, originforegroundColor, originopacity); } }