如何在崩溃或硬启动后永久禁用 Chromium 弹出窗口?

Mer*_*yan 2 chromium raspberry-pi

我知道 禁用 Google Chrome 会话恢复功能后 ,我尝试应用我在那里看到的大部分功能,但没有成功。令人讨厌的烦人的弹出窗口仍然存在。这是在树莓派上

有人可以告诉我为什么以下不起作用。

pi 上的启动文件是/etc/xdg/lxsession/LXDE-pi/autostart,它包含以下内容...

# fix chromium popup on hard reboot
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
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' ~/.config/chromium/'Local State'


# chromium-browser 
chromium-browser --start-fullscreen --kiosk --disable-session-crashed-bubble http://mydomain/?cat=SLOWTV

Run Code Online (Sandbox Code Playgroud)

我已经尝试了命令行上的每个 sed 行,它可以编辑文件。它们在启动时运行时是否有可能默默地失败?

我还尝试了以下 $HOME 变量

sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' $HOME/.config/chromium/Default/Preferences
sed -i 's/"exit_type":"Crashed"/"exit_type":"Normal"/' $HOME/.config/chromium/Default/Preferences
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/' $HOME/.config/chromium/'Local State'

Run Code Online (Sandbox Code Playgroud)

以及以下使用硬编码路径的内容

sed -i 's/"exited_cleanly":false/"exited_cleanly":true/'  /home/pi/.config/chromium/Default/Preferences
sed -i 's/"exit_type":"Crashed"/"exit_type":"Normal"/'  /home/pi/.config/chromium/Default/Preferences
sed -i 's/"exited_cleanly":false/"exited_cleanly":true/'  /home/pi/.config/chromium/'Local State'

Run Code Online (Sandbox Code Playgroud)

我已经尝试过 --incognito 但我得到了另一个不同的 chromium 团队愚蠢的弹出窗口,允许我的网站每次都写入磁盘,( --incognito 清除缓存)

我努力了

chmod -w ~/.config/chromium/'Local State' 
chmod -w ~/.config/chromium/Default/Preferences 
Run Code Online (Sandbox Code Playgroud)

运行sed并验证json变量正确后,但是chromium具有超能力,它将这两个文件的访问权限从-r--------更改回-rw--------

无论我做了什么,每次我按下电源开关(该死的 pi 没有软重启)并且 pi 重新启动时,我都会弹出窗口

Restore page?
Chromium didn't shutdown correctly.
Run Code Online (Sandbox Code Playgroud)

我已经在这上面浪费了一天多的时间了。这变得异常痛苦。感谢您提供解决我的失败的任何提示。

Mer*_*yan 5

虽然,我创建了一个没有 sudo 权限的用户,但对于默认的 pi 用户,以下内容可能同样适用。

在 GUI 上手动退出 Chromium 后(即干净退出)

su
(note: super-user remain in current user path, now using relative to local path)
chattr  +i  .config/chromium/Default/Preferences
chattr  +i  .config/chromium/'Local State' 

Run Code Online (Sandbox Code Playgroud)

如果您从未在 pi 上为 root 创建过密码,请执行以下操作,您将获得上述 su 命令的密码。

sudo passwd root
Run Code Online (Sandbox Code Playgroud)

我已经提交了一个针对 Chromium 的错误:D 这是不必要的痛苦,也是对互联网和人们时间/精力和福祉的浪费。:哈哈: