最近,我正在开发一个可在整个应用程序中播放音乐的应用程序。音乐应在进入背景或屏幕锁定时暂停。为此,我必须在每个活动中分别编写一个onPause()
和一个onResume()
,以使音乐在回到背景时暂停并在回到主视图时恢复。我想知道是否有一种方法可以通过一个超级活动来控制android的生命周期,而我不需要在每个活动中都使用onPause和onResume。
答案 0 :(得分:1)
您可以创建baseActivity并通过使所有其他活动扩展baseActivity来重用代码。
答案 1 :(得分:1)
首先,我建议您在服务中执行此操作(播放音乐)。看一下Android here中的服务。绑定服务后,您可以随时播放音乐或停止播放音乐。对于屏幕锁定情况,声明一个广播接收器,然后注册(在您的服务类别中)。看一下广播接收器here。屏幕锁定后,您的接收器将被触发,您可以停止接收器中的音乐。
答案 2 :(得分:1)
这类应用有@Override
种方法
首先扩展Application
,您就可以使用这样的方法
public void onActivityCreated(Activity activity, Bundle bundle) {
Log.e("","onActivityCreated:" + activity.getLocalClassName());
}
public void onActivityDestroyed(Activity activity) {
Log.e("","onActivityDestroyed:" + activity.getLocalClassName());
}
public void onActivityPaused(Activity activity) {
Log.e("","onActivityPaused:" + activity.getLocalClassName());
}
public void onActivityResumed(Activity activity) {
Log.e("","onActivityResumed:" + activity.getLocalClassName());
}
当您从一项活动转移到另一项活动时,它们不会被调用,但是在您按下主屏幕按钮或销毁应用程序时会被调用