我正在制作一个简单的游戏,我希望使用MediaPlayer在应用程序处于前台时循环播放几首歌曲。当UI不可见时,播放应该停止,所以我决定从活动而不是服务中播放它。
问题是应用程序包含多个活动,所以我不能在每个onPause中暂停它,但我已经想到了。
到目前为止我无法弄清楚的是,我应该何时何地释放MediaPlayer和其他(SoundPool)资源,因为据我所知,没有onDestroy with Applications。 有没有办法弄清楚我在堆栈上剩下多少活动以及最后一次调用Activity.onDestroy()的时候,在那里发布它?
谢谢!
答案 0 :(得分:2)
提供服务。将您的MediaPlayer和其他资源放入服务中。如the Android docs中所述,将每个活动绑定到onStart中的服务,并在onStop中取消绑定。所有组件未绑定时,服务将关闭。