在Android中播放视频时锁定屏幕

时间:2019-07-19 10:33:21

标签: android webview android-webview fullscreen kiosk-mode

当用户在我应用的网络视图中全屏显示html视频(使用onShowCustomView)时,我正在显示一个小挂锁按钮,目的是让用户锁定屏幕以免触摸事件中断视频(视频锁定后仍然应该可见/可听)。

我可以通过覆盖一个不可见的视图来捕获触摸事件并阻止其传播,从而成功阻止主要内容区域/视频本身的触摸,但这不会阻止顶部和底部的系统栏(即背面,家和概述按钮),尽管您必须滑动才能访问它们。

我已经尝试过activity.startLockTask();来锁定系统栏,并且除了后退按钮可以正常工作之外,该方法仍然可以使视频最小化。我使用以下代码尝试捕获后退按钮事件

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (videoControls.isScreenLocked() && keyCode == KeyEvent.KEYCODE_BACK)
    {
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

虽然它在调用onHideCustomView()之前成功捕获了事件,但返回true并没有帮助,它仍然使正在播放的视频最小化,并且在onHideCustomView()中我无能为力要么。

那么,有人知道播放视频时锁定屏幕的好方法吗?还是有一种更好的方法可以阻止系统栏被单击,或者防止它们在滑动时弹出

0 个答案:

没有答案