Android 理解生命周期最好例子—按home暂停音乐播放,跳转暂停

可以设置个全局变量

static boolean isContinue = false;

然后在每个Activity中做如下的处理:
在onResume方法中
将这个变量设置成false;
在onPause方法中
将这个变量设置成true;
在onStop方法中进行判断,
if(isContinue != false)
stopService;
当你跳转到另一个activity的时候,
具体的activity生命周期如图:
这里写图片描述

先执行第一个activity的onPause
此时isContinue = true;
然后执行第二个activity的onResume
此时此时isContinue = false;
当第二个activity is running的时候
第一个activity才会onStop
此时不会停止服务
当按home键的时候,就是直接onPause onStop,然后停止服务。
再次进入应用程序中时,发现背景音乐不再播放了。如果希望此次背景音乐能继续播放,可以如下处理:

在每个Activitiy中 的onResume方法中 添加

if(!AudioService.isPlay){
startService(new Intent(this, AudioService.class));
}

isPlay为服务类Service中我自己定义的一个公共静态变量,在Service中的onStart方法中 为true 在onDestroy中为false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值