Определить, был ли веб-сайт (не веб-приложение!) уже добавлен на главный экран?

Я добавил уведомление JavaScript, которое напоминает пользователям iOS о необходимости «Добавить на главный экран» на некоторых моих сайтах — оно разработано таким образом, что оно срабатывает только при втором посещении сайта пользователем — но будет продолжать отображаться после этого, несмотря ни на что.

Есть ли способ определить, есть ли у пользователя это на рабочем столе, и предотвратить всплывающее уведомление, если они это сделают? Также будет ли способ, которым, если они закроют окно, сигнализируя, что они не хотят его добавлять, оно больше не появится?


person Sam May    schedule 15.10.2013    source источник
comment
Я должен упомянуть - мне нужно, чтобы он открывался в обычном браузере (Safari, Chrome для iOS, что бы ни было у пользователя по умолчанию), поэтому запуск его в полноэкранном режиме не идеален, так как это означает отсутствие кнопок «Назад» и т. д.   -  person Sam May    schedule 15.10.2013


Ответы (2)


Вы не можете знать, добавили ли они вас, но вы можете узнать, просматривают ли они ваш сайт, запустив его с главного экрана. Для этого просто отметьте window.navigator.standalone.

Объедините это с передовой практикой не запрашивать пользователя повторно (установите файл cookie после того, как вы запросили их, и не запрашивайте их снова, пока не истечет срок действия этого файла cookie), и все будет в порядке.

person Robert Levy    schedule 12.11.2013

Вы можете сохранить значение в файле cookie и проверить, посещали ли они уже сайт и/или приняли ли уведомление. Конечно, значения исчезнут, если они очистят свой кеш.

Дополнительную информацию о файлах cookie с javascript можно найти на странице http://www.w3schools.com/js/js_cookies.asp

person RandomHappenstance    schedule 12.11.2013