Я снял галочки с этих двух пунктов просто для теста. Загрузил в Firefox на мобильном устройстве. Пока баннер не вижу… Вы имеете в виду, что баннер PWA должен отображаться, если эти галочки не сняты?
Насколько мне известно, баннер установки PWA поддерживается только в Google Chrome и использует Play Store для создания .APK-файла PWA «на лету» в процессе установки.
Это зависит от нескольких вещей, которых нет на телефонах без сервисов Google.
Похоже, что PWA должны поддерживаться не только в Chrome. Я знаю, что установил PWA через Brave, значит, мой браузер точно его поддерживает.
Событие beforeinstallprompt срабатывает только один раз: если пользователь отклонил его, оно исчезает. Видимо, чтобы не надоедать пользователю?
По-видимому, нет ручного способа активировать API «Установить как приложение».
Проверяет ли код Discourse конкретно наличие Chrome или реагирует на beforeinstallprompt в любом браузере? (Кажется, что проверка не зависит от браузера, см. ссылку на код ниже)
Это выглядит как оригинальное объявление о функции в Chrome. Похоже, что задумывалось возможность для разработчиков сохранять объект события и ненавязчиво показывать его пользователю. Если пользователь проигнорирует его, он должен появиться снова в следующий раз. Только если пользователь инициирует запрос и затем отменит его, событие должно быть отключено на некоторое время (например, на 3 месяца).
Код Discourse, отвечающий за это, однако, добавляет дополнительную проверку на то, был ли когда-либо отклонён баннер Discourse. Правильно ли я понимаю? Похоже, это упущенная возможность: мы могли бы снова показывать баннер, но сознательно этого не делаем. Что, если мы оставим это решение за администратором — хочет ли он показывать запрос в такой ситуации?