私は wp7 と一部でアプリを開発しています。
利用可能な機能 (再生、一時停止、次、前、シーク) を使用して、隔離されたストレージから音楽ファイルを再生するためにメディア要素を開始すると、すべてが完璧になります!
ここで、メディア要素が既に再生されているときに、ユーザー終了またはページアンロードなどでアプリを再生し続けたいと思います!
上記の注意事項をお試しください
list.playlist: オーディオトラックのリストです num_input: 再生するリスト内の音楽ファイルの数です (取得: mediaelement から) time_input: 停止前のメディア要素からのタイムスパンです (set: backgroundaudioplayer から開始) play: ブール変数です。メディア要素が再生される場合は true Stop(): メディア要素の再生を停止する関数です
私がしようとしているのは:
private void PhoneApplicationPage_Unloaded(object sender, RoutedEventArgs e)
{
if (play == true)
{
TimeSpan time_input = med.Position;
Stop();
BackgroundAudioPlayer.Instance.Close();
BackgroundAudioPlayer.Instance.Track = list.playlist[num_input];
BackgroundAudioPlayer.Instance.Position = time_input;
if (PlayState.Playing == BackgroundAudioPlayer.Instance.PlayerState) { BackgroundAudioPlayer.Instance.Pause(); }
else { BackgroundAudioPlayer.Instance.Play(); }
}
}
void Instance_PlayStateChanged(object sender, EventArgs e)
{
switch (BackgroundAudioPlayer.Instance.PlayerState)
{
case PlayState.Playing:
break;
case PlayState.Paused:
case PlayState.Stopped:
break;
}
}
問題は、アプリのページをアンロードするとき (ユーザーの終了時ではなく、最初の問題) に、backgroundaudioplayer が名前と EnabledControls とすべてのスタッフを取得しますが、再生ボタンを押しても再生されないことです (ボタンが機能しないため、2 番目の問題です)。問題)!
また、アプリが閉じていても、そのプレーヤーの横にあるアプリのリストを制御したい(前、次、再生、一時停止)!
すべての曲は分離されており、データベースに曲名とファイル名があります。オーディオ トラックは次のようになります。
AudioTrack audiotrack1 = new AudioTrack(new Uri(emp.EmployeeFile + ".mp3", UriKind.Relative), emp.EmployeeName, null, null, null, null, EnabledPlayerControls.All);
ありがとう!