Посмотрели далеко и широко для информации и не нашли окончательного списка. Пожалуйста, добавьте свои наблюдения. Я уверен, что это пригодится всем.
Различия между uiwebview и мобильным сафари
Ответ 1
У него нет движка Nitro Javascript. Это делает выполнение Javascript намного медленнее в UIWebView по сравнению с Safari.
http://www.tuaw.com/2011/03/18/apple-confirms-some-webkit-optimizations-unavailable-to-ios-apps/
http://ariya.ofilabs.com/2012/06/nitro-javascriptcore-and-jit.html
Ответ 2
Одна вещь, которую я обнаружил, к моей временной скорби заключается в том, что UIWebView
является более строгим при установке значений стиля через JS. Так скажите в мобильном сафари
element.style.width = 300;
будет работать нормально, но в UIWebView
вы должны установить значение как
element.style.width = 300 + "px";
Существуют и другие различия, которые я обнаруживаю медленно. Я обновлю это, как и я.
Ответ 3
Когда UIWebView прокручивает его содержимое, он блокирует все события JavaScript до конца прокрутки. Таким образом, вы абсолютно не можете программно наблюдать и/или управлять процессом прокрутки следующим образом:
window.onscroll = function() {
var scrolled = window.pageYOffset || document.documentElement.scrollTop;
// do something
}
поскольку переменная "scrolled" будет обновляться только один раз - после завершения прокрутки.
Ответ 4
Вы можете установить начальный максимальный размер для HTML5 SQL в Mobile Safari до 50 МБ, но UIWebView, похоже, ограничен 5 МБ. Он отказывается от чего-то большего.
Ответ 5
Два очевидных, с которыми я столкнулся, - это аутентификация и страницы с фреймами.
Для аутентификации UIWebView автоматически не обрабатывает проблемы с проверкой подлинности, но разработчики могут обрабатывать их.
Для страниц с наборами фреймов UIWebView не отслеживает историю просмотров для страниц транзитонов внутри фреймов, что может быть желательной особенностью. Для этого нужно немного возиться.
Ответ 6
Когда дело доходит до производительности, это лучшее резюме, которое вы, скорее всего, найдете: http://www.guypo.com/mobile/ios-browsers-speed-bakeoff/
Ответ 7
Основными отличиями являются панель адреса/поиска, прикрепленная к верхней части страницы и User Agent.
(примечание: есть много других, но это те немногие, что обычно имеют значение)