Javascript для «Добавить на главный экран» на iPhone?

110

Можно ли использовать Javascript для имитации опции «Добавить на главный экран» в меню закладок Mobile Safari?

window.external.AddFavorite(location.href, document.title);Возможно, что-то похожее на IE ?

Керрик
источник

Ответы:

56

Единственный способ добавить какие-либо закладки в MobileSafari (включая те, что находятся на главном экране) - это использовать встроенный пользовательский интерфейс, и Apple не позволяет делать это из скриптов на странице. Фактически, я почти уверен, что в настольной версии Safari механизма для этого тоже нет.

Луи Гербарг
источник
4
Спасибо, я не боялся. Я решил проверить window.navigator.standaloneи убедить их добавить его, если он работает в Mobile Safari.
Керрик
18
@David Не для веб-приложений. Не многие пользователи знают, что могут делать закладки на главном экране. IMHO было бы неплохо со ссылкой / кнопкой, которая запускает диалог с полезным сообщением.
gregers
13
@ Дэвид Это не попрошайничество. Веб-приложения на iOS могут работать как собственные приложения в полноэкранном режиме, если они добавлены на главный экран. Возможен даже автономный режим, поэтому было бы здорово, если бы мы могли использовать javascript, чтобы добавить его на домашний экран (с правильным диалогом корса).
Ákos Nikházy
3
@the_nakos, и поэтому никогда не будет простого способа «добавить на домашний экран», потому что он создал бы альтернативу великолепному магазину приложений Apple с потрясающей оплатой и потрясающими покупками в приложении. Это не единственное, что они сделали, чтобы предотвратить это. В прошлом полноэкранные веб-приложения были ограничены из-за использования только старого движка JavaScript, когда мобильное сафари уже работало на
Павел
63

Пока Safari не реализует Service Worker и не будет следовать направлению, заданному Chrome и Firefox, невозможно программно добавить ваше приложение на главный экран или заставить браузер запрашивать пользователя

Однако есть небольшая библиотека, которая предлагает пользователю сделать это и даже указывает на нужное место. Работает удовольствие.

https://github.com/cubiq/add-to-homescreen

Craig
источник
1
К сожалению, это лучшее решение на сегодняшний день.
hitautodestruct
Библиотека [ссылка ... / add-to0homescreen] работает, однако последний вызов для вызова - addToHomescreen ({}); Внутри скобок должна быть фигурная скобка, означающая, что вы не передаете никаких параметров.
RigidBody
8

Существует библиотека Javascript с открытым исходным кодом, которая предлагает что-то связанное: mobile-bookmark-bubble

Mobile Bookmark Bubble - это библиотека JavaScript, которая добавляет промо-пузырь в нижнюю часть вашего мобильного веб-приложения, предлагая пользователям добавить приложение в закладки на главном экране своего устройства. Библиотека использует локальное хранилище HTML5, чтобы отслеживать, отображалось ли уже промо, чтобы пользователи не постоянно придирались.

Текущая реализация этой библиотеки специально нацелена на Mobile Safari, веб-браузер, используемый на устройствах iPhone и iPad.

Филипп Лаваль
источник
2
Есть ли что-нибудь подобное для Android (или, осмелюсь сказать, Blackberry)?
SnowboardBruin
3

В javascript это невозможно, но да, с помощью «Веб-клипов» мы можем создать значок или ярлык «добавить на главный экран» в iPhone (с помощью файла кода .mobileconfig)

https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/iPhoneOTAConfiguration/ConfigurationProfileExamples/ConfigurationProfileExamples.html

http://appdistro.cttapp.com/webclip/

после создания файла mobileconfig мы можем передать этот URL-адрес в установочном сертификате браузера iphone Safari, и после этого проверьте домашний экран iphone, есть ярлык на вашей веб-странице или веб-приложении ..

Раван-25
источник
Это не дает ответа на вопрос. Как только у вас будет достаточная репутация, вы сможете комментировать любой пост ; вместо этого предоставьте ответы, которые не требуют пояснений от спрашивающего . - Из
Jeet
Джит, не могли бы вы объяснить мне, в чем я ошибаюсь? Да, это правильно По сценарию невозможно создать добавление на главный экран, но с помощью "веб-клипа", который мы можем создать, для этого мы должны создать файл .mobileconfig
Раван-25
Спасибо @jaepage за это ... cttapp.com был онлайн-сайтом, на котором вы можете создать свой собственный файл mobilecofig, а прямо сейчас они закрыли свою веб-страницу, поэтому вы можете использовать developer.apple.com/library/content/documentation/… этот сайт Скоро я создадим для этого наш собственный веб-инструмент ...
Раван-25,
Вы также можете использовать "конфигурацию яблока 2" для создания веб-клипа
-25,