Android:如何知道活动是否完成?

我在一个应用程序,自动播放MP3文件,并从一个给定的活动中连续播放.它通过从MediaPlayer收听“onCompletion”事件知道当前的mp3播放完成.

但是,如果在播放媒体时按返回按钮返回开始显示,显然该活动仍在运行.当“onCompletion”事件被触发时,它会尝试访问列表活动中的视图,并在空指针异常中崩溃.

确定活动不再“活跃”的最佳方法是什么,因此能够阻止来电播放下一个音频?

解决方法

尝试触发活动生命周期方法onStop或onDestroy.查看 this documentation了解更多详情.

用户点击返回按钮时,onStop将被触发.所以在onStop处理你的事件.

public void onStop () {
//do your stuff here
super.onStop() 
}

最终也将调用onDestroy,但是只要点击后退按钮,就不一定要.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...