MyPlayer_2

基于上一次的喵喵喵播放器,我开始了我的不归路,这次将介绍升级版本的MyPlayer_2   ~~

项目地址~~

 

 

本次升级主要包括以下几点:

1.在线播放东北大学校歌

2.从东大官网下载校歌到本地音乐库

3.定位音乐文件。

 

 

First:     在线播放东北大学校歌

  基于上次的喵喵喵播放器制作过程的学习,我了解了如何选择本地文件并播放,通过访问其URI即可。于是我决定试一试能不能直接找到东大官网简介中校歌NEUsong,mp3的URI

于是加入了一个Button,并添加了一个click事件:

 

 private void Button_Click_1(object sender, RoutedEventArgs e)
        {
            Uri PathUri = new Uri("http://www.neu.edu.cn/indexsource/neusong.mp3");
            mediaPlayer.Source = PathUri;
        }

 

   OK,可以播放。

 


 

 

 

Second:从东大官网下载校歌到本地音乐库

 

 

 

  下载过程则需要用到HttpClient

 

     

//Create an HTTP client object
Windows.Web.Http.HttpClient httpClient = new Windows.Web.Http.HttpClient();

 

 

通过调用 StorageFile.OpenAsync 方法打开文件。 打开操作完成后,它将返回文件的内容流。

通过WriteAsync(buffer)写入流,最后通过FlushAsync()关闭该流。

用到的技术:文件创建/写入/读取 ,文件访问权限

 
var file = await KnownFolders.MusicLibrary.CreateFileAsync("NEUsong.mp3", CreationCollisionOption.ReplaceExisting);
using (var stream = await file.OpenAsync(FileAccessMode.ReadWrite)) { await stream.WriteAsync(buffer); await stream.FlushAsync(); } return file;

 

到此即将文件流写入文件中。

最后将流添加到播放器的播放源中并自动播放:

 StorageFile file = await Load();
            if (file != null)
            {
                var stream = await file.OpenAsync(FileAccessMode.Read);
                mediaPlayer.SetSource(stream, file.ContentType);
                mediaPlayer.AutoPlay = true;
            }

 

Finish~~~

 

posted on 2018-04-13 18:04  yh2480444683  阅读(141)  评论(0编辑  收藏  举报

导航