Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何禁用android';触摸屏设备?_Android_Linux_Qt - Fatal编程技术网

如何禁用android';触摸屏设备?

如何禁用android';触摸屏设备?,android,linux,qt,Android,Linux,Qt,该应用程序目前运行在沉浸式粘滞模式下,但当用户从侧面滑动时,操作系统会显示菜单和主页/返回按钮。所以用户可以关闭我的应用程序或运行其他一些不可接受的东西。因此,我需要在android上完全禁用触摸屏设备,以防止任何点击和滑动 如果我不能通过官方API禁用它,我可以使用控制台禁用touchpad吗?Android将生根发芽 我发现我的触摸板设备是/sys/devices/virtual/input/input1,但仍然找不到哪里可以禁用它/电源/控制仅“开启”或“自动” 我在xinput上找到了其

该应用程序目前运行在沉浸式粘滞模式下,但当用户从侧面滑动时,操作系统会显示菜单和主页/返回按钮。所以用户可以关闭我的应用程序或运行其他一些不可接受的东西。因此,我需要在android上完全禁用触摸屏设备,以防止任何点击和滑动

如果我不能通过官方API禁用它,我可以使用控制台禁用touchpad吗?Android将生根发芽

我发现我的触摸板设备是/sys/devices/virtual/input/input1,但仍然找不到哪里可以禁用它/电源/控制仅“开启”或“自动”


我在xinput上找到了其他解决方案,但在android上没有。

我认为您可以覆盖TouchEvent上的函数

private boolean touch_disabled=true;
@Override
public boolean onTouchEvent(MotionEvent e) {
        if (touch_disabled){
            return true;
        }else {
            //do something here if your touch screen is activated
        }
    }
    public disable_touch(boolean b) {
        touch_disabled=b; //function to activate or desactivate touch screen
    }

这是不可接受的,您不能强制用户仅使用您的应用程序。Android操作系统具有多任务功能,因此用户可以在多个应用程序之间切换。顺便说一句,即使你的手机是根用户,你也不能完全关闭触摸屏。没有办法让你的应用程序独占控制一个通用的Android主机。如果这是您自己的硬件和Android映像,那么您当然可以将所有设置设置为只运行一个应用程序-但这是从应用程序外部控制的,属于系统配置!你解决了这个问题吗?我同样需要禁用触摸屏。thx,@ransh不,我找不到如何禁用触摸板。相反,我决定只阻止状态栏。此外,若要阻止“主”和“最近”按钮,您可以覆盖onPause方法,并使用moveTaskToFront和KeyguargManager恢复您的应用程序。它在某些设备(例如索尼的安卓4)上无法正常工作,但在大多数设备上工作良好。覆盖触摸事件会使你的应用忽略触摸事件,而不是系统。所以菜单和按钮仍然出现。@Vlad不幸的是,无法覆盖某些系统事件。这是出于一些明显的安全原因。有一些应用程序的目的是锁定触摸屏,比如触摸锁,但我不知道它们是如何工作的。