Подтвердить что ты не робот

Мобильное сафари и домашний экран webapp

Я разрабатываю webapp для iOS, и я заметил некоторые странные вещи между запуском на мобильном сафари и запуском с рабочего стола.

Есть ли какие-либо ресурсы, которые либо предоставляют общий интерфейс для перехода между режимами?

Если нет, есть ли какие-либо ресурсы, детализирующие все различия и getchas между двумя режимами?

Вещи, с которыми я столкнулся:

Длительный опрос - это странно. См. этот пример.

window.innerWidth и window.innerHeight являются несогласованными.

  • Mobile Safari - вертикальная ориентация работает, как и ожидалось, горизонтальная
    • Вертикальная
      • width-768
      • высота - 946
    • Горизонтальный
      • width- 769??
      • height-518??
  • Веб-приложение на Homescreen - они всегда имеют смысл.
    • Вертикальная
      • width-768
      • height- 1004
    • Горизонтальный
      • width- 1024
      • height- 748

Дополнительные материалы:

Я нашел this и this, чтобы быть интересно.

Этот вопрос также проливает свет на странные поведения.

4b9b3361

Ответ 1

Я не думаю, что Apple публично задокументировала атрибуты полноэкранных веб-приложений в iOS, поэтому все, что вы найдете, может быть анекдотичным и, следовательно, недостаточно надежным, чтобы зависеть в будущих выпусках.

Возможно, вам удастся создать приложение, в котором есть только UIWebView, отображающий ваше веб-приложение. Режимы представления для приложений iOS четко определены и хорошо документированы, и приложение может предоставить другие функции, которые могут понадобиться в будущем (например, локальные уведомления, фоновое выполнение, настраиваемые обработчики URL-адресов).

Ответ 2

При использовании

<meta name="viewport" content="user-scalable = no, width = device-width" />

вы получите окно window.innerWidth!!!

При использовании

<meta name="viewport" content="initial-scale = 1.0, maximum-scale = 1.0, user-scalable = no, width = device-width" />

вы получите → пейзаж: 1024 x 690 и портрет: 768 x 946 (режим "сафари" )

Ответ 3

Существует четыре варианта, которые Apple поддерживает в приложениях на главном экране: значок, заставка, скрытие панели инструментов и настройка режима состояния.

См. http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html#//apple_ref/doc/uid/TP40002051-CH3-SW3.

Ответ 4

Если вы создаете приложение для мобильных устройств, вы можете взглянуть на Sencha Touch, который устраняет головную боль управления нюансы в мобильных устройствах.

Затем вы можете просто создать свое обычное веб-приложение рядом с ним.