我正在Xamarin.Android为VS2017制作乐器演奏应用程序(“Walkband”风格)。
我有一个名为MediaPlayers
的{{1}}数组。
这是Play功能,其中players
相当于resid
:
Resource.Raw.filename
大部分时间它都很好,但偶尔(特别是在快速连续播放许多资源之后),它无法播放。
成功后日志如下所示:
public void Play(int resid)
{
for (int i = 0; i < players.Length; i++)
{
if (!players[i].IsPlaying)
{
players[i].Reset();
players[i] = MediaPlayer.Create(this, resid);
players[i].Start();
break;
}
}
}
当它失败时就像这样:
06-04 14:52:26.112 I/MediaPlayer(17611): message received msg=2, ext1=0, ext2=0
06-04 14:52:26.112 I/MediaPlayer(17611): playback complete
资源本身不是问题,因为所有资源大部分都有效,而且偶尔都会失败