如何禁用还原页面?铬无法正确关闭。提示?


18

我正在为公司的四个显示器自动化RPi。我让他们每天重启,因此浏览器将刷新。我无法获得“还原”页面?铬没有正确关闭气泡,气泡没有出现。香港专业教育学院尝试过香港专业教育学院在网上找到的几种解决方案,但没有用。

Ive添加了很多开关,例如--noerrdialogs --disable-session-crashed-bubble --disable-infobars --disable-restore-session-state --incognito

Ive还尝试了一些我在网上找到的sed命令。

任何帮助将不胜感激。


您是否考虑过适当关闭Chrome?
史蒂夫·罗比拉德

我建议这是因为它正在治疗疾病,而不是副作用。
史蒂夫·罗比拉德

我正在考虑通过cronjob在重启运行前10分钟关闭铬。那就是下一步,有什么建议吗?
Paul Karvetski

如果通过GUI编写脚本并在重新启动之前添加了检查,这可能会特别有用。您也可以完全避免重新启动。如果他们只显示一个页面,则可能需要查看fullpageOS。
Steve Robillard

1
您可以在一定时间后使用javascript进行刷新stackoverflow.com/questions/2787679/…您可能不需要每5秒钟刷新一次,但理论是相同的。
Steve Robillard

Answers:



6

1)我不知道为什么--disable-infobars对您不起作用。这对我来说很好:

chromium-browser --kiosk --disable-infobars \
http://URL1 \
http://URL2 \
http://URL3

2)刷新浏览器(内容)的更好方法是将其发送给Control-R? 例如,在您的浏览器启动脚本中,执行以下操作:

(while sleep 200; do xdotool key ctrl+R; done) &

(我还发送ctrl + Tab循环浏览我的多个浏览器标签


4

我知道这并不能真正解决问题-但作为变通方法-它为我解决了问题。

我确定Chrome干净关闭了...打开终端

cd .config/chromium/Default
chattr +i Preferences

这使得该文件不可变...严格只读,Chrome可能会崩溃至多-由于无法更改首选项文件,因此不会显示弹出窗口。

此设置对我有用,因为Pi配置不会更改-只是在信息亭模式下显示基于Web的应用程序。


也可以在Linux发行版中工作...请注意,Windows / WebDriver / Selenium中可能存在其他地方所报告的问题
MarcoZen

4

对于那些从Google到达这里的人:

现在,无需使用隐身模式,执行此任务的最佳方法是在Chromium首选项中调整两个设置。他们是:

  • exited_cleanly
  • exit_type

根据我从个人测试中收集到的信息,仅更改“ exited_cleanly”设置可能并不总是可以防止启动时出现Chromium提示。其他标志,例如“ -disable-infobars”也将不起作用。

要调整这些设置,请在启动Chromium之前在启动文件中添加以下内容(具体取决于您如何将Chromium设置为在信息亭模式下自动运行,该文件可以位于“ / etc / xdg / lxsession / LXDE- pi / autostart”,“ / etc / xdg / openbox / autostart”,“〜/ .Xsession”或其他文件,具体取决于您已安装的文件。

  • sed -i's /“ exited_cleanly”:false /“ exited_cleanly”:true /'〜/ .config / chromium / Default / Preferences
  • sed -i's /“ exit_type”:“ Crashed” /“ exit_type”:“ Normal” /'〜/ .config / chromium / Default / Preferences

例如,对于我的设置(使用Xsession),该过程将如下所示:

  1. 在控制台中输入“ sudo〜/ .Xsession”
  2. 在运行Chromium之前,将以上两行插入文件中(您应该看到以“ chromium-browser”开头的行,因此请将其插入此行上方)
  3. 按Ctrl + X退出文件
  4. 输入“ Y”
  5. 按回车
  6. 重新启动机器

同样,用于启动Chromium的文件可能位于不同的位置,具体取决于您如何设置pi,但是更改了这两个设置后,Chromium应该启动而不显示崩溃提示。


2

我想出了一种解决方法,实际上可以一次处理多个项目。

vi restartscript.sh

#!/bin/sh
/usr/bin/killall chromium-browser
/usr/bin/apt-get update -y
/usr/bin/ apt-get upgrade -y
/sbin/reboot

使脚本可执行: chmod +x restartscript.sh

编辑cron: chrontab -e

0 5 * * * /home/pi/restartscript.sh

显示的网页即时消息会刷新,并且pi保持最新状态。


2

页面给了我答案。添加选项

chrome_options.add_argument("--profile-directory=Default")

为我解决了此问题(在非kiosk应用程序中)。

事实证明,这只是问题的一部分。整个情况似乎变化很大。我还添加了:

prefs = {'exit_type': 'Normal'}
chrome_options.add_experimental_option("prefs", {'profile': prefs})

试图重现错误以证明这是解决问题的方法,但现在无法通过弹出窗口返回(即使没有此代码)。YMMV,顺便说一句,这是运行版本72的Chrome。在启动浏览器之前,我看到过其他文章主张用sed之类的方法来更改“首选项”文件


1

我的解决方案非常简单。我仅从先前清除Chromium的当前文件中复制一个Preferences文件到当前文件~/.config/chromium/Default/Preferences


0

要禁用“还原页面”气泡,我在自动启动文件中两次打开铬,如下所示:

chromium-browser --no-startup-window --kiosk
chromium-browser --noerrordialogs --kiosk http://your.url.here

第一个出现弹出气泡,但您没有看到它,然后第二个打开,好像浏览器已成功关闭。可能不是最干净的方法,但这对我有用。


0

对我有用的唯一方法是在启动Chromium之前修改配置:

sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/Default/Preferences
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.