Как отключить сообщение «Хром не выключился правильно» при открытии браузера?

15

Я запускаю Chromium 39 в Ubuntu 14.04 на одноплатном компьютере (ODROID U3, хотя я считаю, что этот вопрос применим к Chromium в любой системе Ubuntu и, возможно, в других дистрибутивах Linux).

Компьютер используется с Chromium в режиме киоска для питания большого настенного дисплея; однако, если система теряет питание, при перезапуске Chromium появляется большая полоса с жалобами на то, что «Chromium не выключился правильно». Поскольку система спроектирована для автоматизации, и мы намерены запускать несколько систем, ручное подключение к машине (или, что еще хуже, обход подключения и отключения USB-мыши) не является приемлемым решением.

Как я могу предотвратить появление Chromium в этом предупреждении, если он неправильно отключился?

Доктор Дж
источник

Ответы:

20

Гораздо проще, запустите Chromium с флагом --disable-infobars. Я попробовал все вышеизложенное, прежде чем найти его, и он делает именно то, что я хотел. Вы можете оставить все остальные вещи в покое.

Моя конкретная командная строка:

/usr/bin/chromium-browser --start-fullscreen --disable-session-crashed-bubble --disable-infobars http://www.example.com
Стив
источник
Спасибо за публикацию этого. Прекрасно работает с --kioskвыключателем.
Дэн Макдугалл
Я не думаю, что --start-fullscreenэто необходимо при использовании --kiosk.
ЕМС
--disable-session-crashed-bubble не работает в какой-то момент в Chrome 58 ... не стесняйтесь добавлять свои два бита в bugs.chromium.org/p/chromium/issues/detail?id=445256#c17 (который, кажется, все еще находится на рассмотрении), чтобы сообщить команде Chromium, что это важно, и, надеюсь, эта функциональность будет добавлена ​​обратно ...
Бен Робертс
14

Кроме того, очевидно, что работа в режиме инкогнито по умолчанию также предотвратит ошибку, так как в сеансе ничего не сохраняется, чтобы можно было проверить наличие сбоев.

пример: chromium-browser --kiosk --start-maximized --incognito kiosk.html

user2961555
источник
--incognito работает, но он убивает куки, которые (в моем случае) необходимы
Davide Andrea
Это хорошо сработало для меня. Я не смог заставить работать вышеуказанные решения --disable-infobars или --disable-session-crash, указанные выше.
Нейт Дудек
5

Это, наконец, сработало для меня, и это довольно просто:

  1. Отключить Хром изящно
  2. Измените разрешения «Изменить содержимое» для ~ / .config / chromium / Default / Preferences на «Никто»

Это заблокирует состояние двух переменных, независимо от того, как был отключен Chromium:

  • "exit_type": "Normal"
  • "exited_cleanly": правда

Конечно, делать это можно только после того, как вы закончите настройку параметров.

Давиде Андреа
источник
Спасибо, что поймали это. Я разместил это не в том месте. Я вырезал его оттуда, скопировал сюда. Исправлена.
Давиде Андреа
Да, я написал это. Я написал не в ту вкладку браузера (другой вопрос). Когда я заметил, я вырезал его оттуда (так что оригинал больше не существует), и я вставил его во вкладку с этим вопросом, в правильном месте. Я действительно сожалею, что вызвал все это замешательство, и я благодарю вас за то, что вы поймали мою ошибку вставки.
Давиде Андреа
Хорошо, тогда ты в порядке.
Скотт
2
Пожалуйста, не размещайте один и тот же ответ на несколько вопросов. Если одна и та же информация действительно отвечает на оба вопроса, то один вопрос (обычно более новый) следует закрыть как дубликат другого. Вы можете указать это путем голосования, чтобы закрыть его как дубликат или, если у вас недостаточно репутации для этого, поднять флаг, чтобы указать, что это дубликат. В противном случае настройте свой ответ на этот вопрос, а не просто вставляйте один и тот же ответ в нескольких местах.
DavidPostill
2

Версия 39 Chromium (по крайней мере в Ubuntu) отслеживает состояние выхода браузера в трех отдельных файлах:

  • ~ / .config / chromium / "Профиль 1" / Настройки
  • ~ / .config / chromium / "Профиль 1" /. org.chromium.Chromium.XXXXXX
  • ~ / .config / chromium / "Местное государство"

Где «XXXXXX» - это шестизначная случайная буквенно-цифровая строка. Также обратите внимание, что «Профиль 1» может называться по-разному в зависимости от того, какой профиль браузера вы используете (другое распространенное имя профиля просто «По умолчанию»)

Два файла на основе профиля имеют две записи, которые могут вызвать сообщение: «exit_state» (значения могут быть «Normal» или «Crashed», с кавычками) и «exited_cleanly» (значения либо true, либо false, без кавычек).

Файл "Local State" содержит только запись "exited_cleanly".

Существует также файл блокировки, который может вызвать проблемы; этот файл находится в

  • ~ / .Config / хром / SingletonLock

Вы можете написать скрипт, который использует sedи rmисправляет их перед запуском Chromium

#!/bin/bash

#Set CrProfile to the value of your startup profile's config folder
CrProfile="Profile 1"

#Set URL to the URL that you want the browser to start with
URL="http://www.example.com"

#Clean up the randomly-named file(s)
for i in $HOME/.config/chromium/$CrProfile/.org.chromium.Chromium.*; do
    sed -i 's/"exited_cleanly": false/"exited_cleanly": true/' $i
    sed -i 's/"exit_state": "Crashed"/"exit_state": "Normal"/' $i
done

#Clean up Preferences
sed -i 's/"exited_cleanly": false/"exited_cleanly": true/' $HOME/.config/chromium/$CrProfile/Preferences
sed -i 's/"exit_state": "Crashed"/"exit_state": "Normal"/' $HOME/.config/chromium/$CrProfile/Preferences

#Clean up Local State
sed -i 's/"exited_cleanly": false/"exited_cleanly": true/' $HOME/.config/chromium/"Local State"

#Delete SingletonLock
rm -f $HOME/.config/chromium/SingletonLock

/usr/bin/X11/chromium-browser --kiosk $URL

Обратите внимание, что для идеального использования предпочтения Chromium должны быть настроены на запуск с новой вкладки, а не с конкретного URL-адреса или восстановления сеанса; это гарантирует, что он начинается с указанного URL и больше ничего.

Доктор Дж
источник
Обратите внимание, что я переписал скрипт из памяти (с помощью заметок, напоминающих мне, где были расположены файлы); если кто-то обнаружит какие-либо явные синтаксические ошибки или тому подобное, пожалуйста, не стесняйтесь редактировать или указывать в комментариях.
Доктор J
У меня нет файлов со случайным именем, но в остальном это помогло мне.
Роджер Липскомб
Кажется, это больше не работает; Я все еще (иногда) получаю "Восстановить страницы?" предупреждение. Есть идеи?
Роджер Липскомб
@RogerLipscombe, если у вас все еще есть эта проблема, посмотрите ответ Стива выше (который я пометил как принятый, потому что он, похоже, помогает мне с моим тестовым модулем). Надеюсь, это поможет!
Doktor J
2

Решение / Взлом через 5 секунд ( /ubuntu//a/720855 ) Настройки-> Расширенные настройки-> Система-> снимите флажок Продолжить запуск фоновых приложений при закрытии Chrome

(прочитайте всю ветку для подсказок, почему проблема происходит. Имеет много смысла)

ArkosX
источник
2
Пожалуйста, процитируйте основные части ответа по ссылочной ссылке (ссылкам), так как ответ может стать недействительным, если связанные страницы изменятся.
ДэвидПостилл
Спасибо . Это гораздо более простое решение и работает для моего случая.
Плазгот
1

Просто используйте режим инкогнито:

chromium-browser --incognito http://www.example.com
Афонсу
источник
@ Тото, как это ссылка только ответ? Я имею в виду, он мог бы использовать объяснение, но URL приведен в качестве примера.
bertieb
@bertieb: Без объяснения причин я рассматриваю это как ссылку только потому, что вижу только ссылку, но после перечитывания она кажется постом очень низкого качества. Я просто оставляю последнюю часть своего комментария: не могли бы вы подробнее остановиться на этом?
Тото