如何从终端(不是F11)以全屏模式启动顿悟浏览器?文档说使用参数,-f
或者--fullscreen
它们都不起作用。
如何从终端(不是F11)以全屏模式启动顿悟浏览器?文档说使用参数,-f
或者--fullscreen
它们都不起作用。
Answers:
您可以使用的信息亭模式下启动它-a
,可能需要~/.config
为您的个人资料创建自己的文件。
epiphany-browser -a --profile ~/.config http://localhost/index.html
~/.config
到/home/pi/.config
当你把这个/etc/rc.local
和它的作品就像一个魅力
这是我如何在Kiosk模式下使用默认浏览器的信息。首先,我将sudo raspi-config
启动选项设置为b2“具有自动登录功能的命令提示符”
/home/pi/
使用以下内容
在主目录中创建文件startBsudo nano ./startB
#!/bin/sh
xset -dpms # disable DPMS (Energy Star) features.
xset s off # disable screen saver
xset s noblank # don't blank the video device
matchbox-window-manager -use_titlebar no &
WEBKIT_DISABLE_TBS=1 epiphany-browser -a --profile /home/pi/.config http://site
现在sudo nano /etc/rc.local
并在出口0之前放入以下行
sudo xinit ./home/pi/startB &
Raspberry Pi将使用浏览器以信息亭模式启动。
WEBKIT_DISABLE_TBS=1
要设置它应该做什么。与kweb无关吗?
经过尝试,我获得了成功。
将此shell脚本保存到: /home/pi/fullscreen.sh
sudo -u pi epiphany-browser -a --profile ~/.config http://127.0.0.1/index.html --display=:0 &
sleep 15s;
xte "key F11" -x:0
&
很重要 该标记忽略了主显浏览器的错误。我添加了&
标记,因为在命令行上尝试此Shell脚本后出现错误。
sudo apt-get install epiphany-browser
sudo apt-get install xautomation
sudo vi /etc/xdg/lxsession/LXDE/autostart
@/home/pi/fullscreen.sh
sudo chmod 755 /home/pi/fullscreen.sh
(对不起,我的英语不好,因为我是日本人。)
该-a
标志对我而言不会导致全屏显示,并且F11
切换全屏显示(而不是仅对其进行设置)时,我需要更具体的内容。
我最终使用了wmctrl -r "<name of window>" -b add,fullscreen
它来设置全屏显示,而不是在浏览器进程仍在运行时循环切换并调用它。主显节的响应与您按F11键,隐藏导航栏并删除窗口装饰的响应相同。
# disable screensaver and screen blanking
xset -dpms s off
# create profile folder if it doesn't exist
mkdir -p /home/<user>/.config/epiphany-kiosk
# launch the browser as a background process
epiphany-browser -a --profile /home/<user>/.config/epiphany-kiosk http://localhost:8000/ &
# see /programming//a/20165094/66349
# get the browser PID
pid=$!
# If this script is killed, kill the main process.
trap "kill $pid 2> /dev/null" EXIT
# Loop while it's running...
while kill -0 $pid 2> /dev/null; do
wmctrl -r "<name of window>" -b add,fullscreen
sleep 2
done
# Disable the trap on a normal exit.
trap - EXIT
我发现在主显节启动命令和Xte很烂之间使用了延迟。我寻找一种更好的方法(并且更可靠)。
我的第一次尝试是在将执行xte命令的php文件上打开主显节:<?php $out = shell_exec("xte 'key F11'"); ?>
不幸的是,它不起作用。但是不能告诉你为什么(如果有人知道,我很感兴趣)。当我用输出回显时,xte -h
确实在网页上得到了xte命令的帮助...无论如何我没有太多时间,所以我尝试了另一种方法。
这个想法仍然是将主显节启动到包含以下内容的php文件(fs.php):
$h = fopen("/var/www/fs/FS.chk", "w");
#fwrite($h, "browser opened"); # <- don't really need this
fclose($h);
为了启动Web浏览器,我将使用bash脚本,该脚本可以在启动后或您希望的任何时间运行。该脚本包含:
if [ -e "var/www/fs/FS.chk" ]; then
rm -f /var/www/fs/FS.chk
fi
epiphany localhost/fs/fs.php &
until [ -e "/var/www/fs/FS.chk" ]
do
sleep 0.1
done
xte "key F11"
如您所见,我的工作目录是/ var / www / fs /。但是您可以根据需要进行调整。同样,在网络浏览器以全屏模式运行后,在php文件上添加重定向以切换到所需的网页也非常容易。
php代码创建见证文件(FS.chk),而bash在向该php文件启动了顿悟之后,正在寻找见证文件。仅当主显节打开后才创建此文件(摆脱了先前帖子中15秒钟的睡眠)。bash看到见证文件后,将执行xte命令...
编辑:我只是发现,重要的是不要在URL传递给顿悟之前添加“ http://”。如果这样做,显然将发出xte命令。
这样吧!转到:https : //github.com/elalemanyo/raspberry-pi-kiosk-screen
创建文件: nano /home/pi/fullscreen.sh
将此粘贴到fullscreen.sh中:
#!/bin/bash
sleep 20
if [ -z "$(pgrep epiphany)" ];
then (sudo -u pi epiphany-browser -a -i --profile ~/.config http://www.na.se --display=:0) &
sleep 5s;
xte "key F11" -x:0;
fi
bash $0 &
然后,如果您的浏览器崩溃了,它将重新开始运行:)
xte可以选择将命令发送到远程(或本地显示)
使用-x xte选项更简单:
epiphany --display=:0 [http://YOURURL]
sleep 20 && xte -x :0 "key F11"
祝好运!