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

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)) {
            //屏幕黑了
           //这里也要重新加载当前页面
        }
    }
};

展开阅读全文

没有更多推荐了,返回首页