Safari Upload Enabler - загрузка файлов с iPad на сервер
Этот маленький плагин для Safari лишает работы большой
компьютер. Ведь теперь с iPad можно не только загружать и редактировать
документы и графику, но и выкладывать их в сеть. Раньше единственным путем для
пересылки файлов была почта, и не было возможности загрузить на сайт даже фото
из альбома.
Для установки плагина необходим jailbreak устройства. Только тогда файловая
система открывается перед пользователем. Плагин стоит $2, но в некоторых
репозиториях его можно найти бесплатно. После установки программа ничем себя не
выдает. И только на сайте где есть форма для загрузки файлов, при нажатии на
кнопку появляется окно, где есть возможность выбрать файл из проводника, либо
изображение из фотогалереи. Плагин работает на версиях прошивки начиная с 4.2.
В AppStore есть программа igniter, которая тоже позволяет делать upload файлов,
но для ее работы нужно настраивать формы на сайте. В отличие от нее, Safari
Upload Enabler работает со всеми сайтами, без специальных настроек.
Файловый ввод в iOS
Стандартный элемент веб-форм для выбора файла в мобильной версии Safari до четвёртой версии iOS был отключён на системном уровне. Браузер не предоставлял доступа к локальной файловой системе и фотоальбому, поэтому кнопка выбора файла на веб-страницах оставалась неактивной. Единственным штатным способом передать файл с iPad или iPhone на удалённый сервер была отправка вложения по электронной почте.
Ограничение связано с моделью безопасности iOS, где каждое приложение работает в собственной изолированной среде и не имеет прямого доступа к файлам других программ. Системный проводник, привычный по настольным операционным системам, отсутствовал. Штатный механизм обмена файлами между приложениями появился позже, а на момент выхода iOS 4 и 5 для веб-сценариев такой возможности не существовало.
Обход ограничения достигался только на устройствах с jailbreak. Взлом снимал запрет на доступ к файловой системе, и сторонние расширения могли встроить вызов проводника в стандартный диалог Safari. Принцип работы плагина основан на перехвате события активации поля выбора файла и подмене бездействующего системного обработчика собственным, способным открыть дерево каталогов и медиатеку.
