ubuntu20.04 inactive 10分钟后自动关闭屏幕问题

内核编译和嵌入式产品的设计与开发
回复
sonicss
帖子: 2
注册时间: 2022-02-19 21:47
系统: WIN10

ubuntu20.04 inactive 10分钟后自动关闭屏幕问题

#1

帖子 sonicss » 2022-02-19 21:57

操作系统:ubuntu 20.04
软件:Qt 6.22
硬件:12寸电容屏 J1900 CPU

各位Tx,我在开发的一个软件,使用ubuntu 20.04作为操作系统,使用Qt做应用开发,遇到了如下问题:

要求:开机后程序自启动,用户不可切换到Linux桌面,不能呼出自带的虚拟键盘

我采用了2种办法来解决该问题:

方法1:在/etc/rc.local里添加Qt环境变量,使用startx 启动我的应用程序

代码: 全选

startx /home/user/程序 -- /usr/bin/X :0

方法2:在/etc/profile里添加Qt环境变量,启动应用程序

代码: 全选

/home/user/程序
------------------------------------------------------------------------------
使用方法1,由于没有启动gnome,所以很方便的运行自己的程序,不会有使用上的问题,但该方法,在没有任何操作的情况下,10分钟,系统会自动关闭屏幕,我网上搜了很多方法,都没能解决该问题。

使用方法2:虽然将程序设置为最前,但gnome的部分无法手动关闭的通知会弹出,用户用手从屏幕左边缘滑动,可以切换到系统桌面,用户用手从下往上滑动,会呼出系统的虚拟键盘,该方法在桌面设置禁止待机等参数后,不存在10分钟关闭屏幕的情况。

--------------------------------------------------------------------------------

有没有哪位Tx遇到了和我一样的问题,且能够有效解决,谢谢!
头像
astolia
论坛版主
帖子: 6452
注册时间: 2008-09-18 13:11

Re: ubuntu20.04 inactive 10分钟后自动关闭屏幕问题

#2

帖子 astolia » 2022-02-20 14:10

在你的方法1里面,执行xset -dpms看有没有效
可以改xorg.conf配置,在Section "ServerLayout"里面加上下面这段,就不用每次执行xset了

代码: 全选

Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
如果还跑了某些screensaver,也要卸载或者在配置里禁用,比如xscreensaver要把.xscreensaver里面的dpmsEnabled改成False
sonicss
帖子: 2
注册时间: 2022-02-19 21:47
系统: WIN10

Re: ubuntu20.04 inactive 10分钟后自动关闭屏幕问题

#3

帖子 sonicss » 2022-02-20 17:57

astolia 写了: 2022-02-20 14:10 在你的方法1里面,执行xset -dpms看有没有效
可以改xorg.conf配置,在Section "ServerLayout"里面加上下面这段,就不用每次执行xset了

代码: 全选

Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
如果还跑了某些screensaver,也要卸载或者在配置里禁用,比如xscreensaver要把.xscreensaver里面的dpmsEnabled改成False


谢谢,这么快就回复了,真没想到,该方法有效的

我后来这么解决的
因为我使用xstart启动程序,启动前后都没法用xset命令,所以是通过修改xorg的配置文件

ubunt20.04的xorg配置文件,位于

代码: 全选

/usr/share/X11/xorg.conf.d/
目录下,里面有好几个配置文件,可以自己新建一个文件,名字参考其他几个文件取,文件内容(eDP-1是屏对应的显示器名字,Monitor这个Section不加,也不影响)

代码: 全选

Section "Monitor"
    Identifier "eDP-1"
    Option "DPMS" "false"
EndSection

Section "ServerLayout"
    Identifier "ServerLayout0"
    Option "BlankTime" "0"
    Option "StandbyTime" "0"
    Option "SuspendTime" "0"
    Option "OffTime" "0"
EndSection
回复