您的位置:首页 > 移动开发

WebView加载h5页面播放音乐或视频 返回,按锁屏键,按home键 播放不停止问题

2017-12-26 10:55 3107 查看
1,退出当关webview 播放不停止

      处理:要在当前activity的 onDestroy()生命周期方法中加载一空页面    mWebview.loadUrl("about:blank");

2.  按home键和锁屏键 播放不停止

     首先,home键和锁屏是系统放出的广播  需要你去接收这条广播 , home键和锁屏键都会走onPause() 这个生命周期方法 ,再接收到广播后,需要你重新加载你当前页面即可,如果有上述1中的方法加载一个空页面,当你再点亮屏幕或唤起app时,你的h5页面就会是空的

     

@Override
protected void onPause() {
super.onPause();
IntentFilter filter = new IntentFilter();
//锁屏广播,由系统发出
filter.addAction(Intent.ACTION_SCREEN_ON);
//锁屏广播,由系统发出
filter.addAction(Intent.ACTION_SCREEN_OFF);
//点击home键广播,由系统发出
filter.addAction(Intent.ACTION_CLOSE_SYSTEM_DIALOGS);
registerReceiver(homeAndLockReceiver, filter);
}

private BroadcastReceiver homeAndLockReceiver = new BroadcastReceiver() {
String SYSTEM_REASON = "reason";
String SYSTEM_HOME_KEY = "homekey";

@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if (action.equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) {
String reason = intent.getStringExtra(SYSTEM_REASON);
if (TextUtils.equals(reason, SYSTEM_HOME_KEY)) {
//表示按了home键,程序到了后台
//这里重新加当前页面
}
} else if (action.equals(Intent.ACTION_SCREEN_ON)) {
//屏幕亮了

} else if (action.equals(Intent.ACTION_SCREEN_OFF)) {
//屏幕黑了
//这里也要重新加载当前页面
}
}
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: