Веб-програма html5 для мобільного сафарі для завантаження зображень із Photos.app?


93

Чи можна написати веб-програму HTML5, призначену для пристроїв iOS (iPad, iPhone, iPod Touch), яка може дозволити користувачеві завантажувати зображення з файлової системи?

Уявіть, як завантажити нову фотографію у свій аватар у Twitter за допомогою веб-програми.

Відповіді:


98

ОНОВЛЕННЯ: iOs 6 Safari підтримує завантаження відео та зображень із бібліотеки фотографій.

====

Я ненавиджу це слово, але це неможливо (зараз). Ось причини:

1) мобільне сафарі не підтримує завантаження нічого.

2) мобільне сафарі не може отримати доступ до компонентів ios (насправді воно може, але лише через фонегап )


7
Ви маєте рацію, це ненависне слово! Моє дослідження показало те саме, і я просто не міг з цим жити, про що запитували тут на SO. Дякую за відповідь.
Абхік

2
Я не розумію, чому Apple не дозволив експонувати папку із зображеннями / відео, а не боявся викрити всю систему.
fasih.rana

1
Будь-яке посилання на документацію iOS Safari, щоб дізнатися, як досягти завантаження зображень у iOS ?? Дякую!
detj

Ах! Це робиться автоматично. Без
клопоту

Чи можете ви розмістити код для завантаження файлів у браузері ios safari за допомогою HTML 5?
Картік

28

іншим способом вирішення цієї проблеми було б надати користувачам приватну електронну адресу, на яку вони можуть надсилати свої фотографії для автоматичного завантаження (наприклад, photos+abc123@yoursite.com).

Ще трохи роботи над налаштуванням, але це забезпечить постійний досвід для користувачів на всіх пристроях (і немобільним користувачам це теж може бути зручно).


Цікаво, як це можна зробити, я маю на увазі, користувач надсилає електронний лист із вкладенням, фотографією чи відео, як я можу витягти цю інформацію та зберегти її в БД і розмістити відносну інформацію у потрібному місці, фотографії у папці images та відео в папку відео ... вже повинен бути сценарій, який це може зробити ... або щось подібне ..
Танкер

@Tanker так, вашій програмі доведеться періодично отримувати електронні листи, захоплювати вкладення та зберігати зміни. Раніше я використовував для цього бібліотеки електронної пошти ChilKat , хоча попередив вас, що це не завжди добре компілюється (для мене -ymmv) між 32/64 біт.
brichins

9

Мені подобається рішення пікапу на http://picupapp.com


Для цього існує підручник . Однією з проблем Picup є те, що він завантажує зображення на сторонній сервер (imgur.com), що може створити багато проблем з ліцензуванням / конфіденційністю. Умови використання Imgur в основному говорять про те, що вони є власником зображення, і ви не можете використовувати його в комерційних цілях.
Ян Данн,

2
@Ian Dunn: Picup можна налаштувати для завантаження зображення на будь-яку вподобану URL-адресу. Imgur - це лише за замовчуванням.
geon

8

Я знайшов прийнятну роботу для цього. Додайте пошту Посилання на сторінку із заздалегідь визначеними інструкціями, що показує користувачеві, як скопіювати вставку зображення зі свого рулону камери в електронне повідомлення. Потім напишіть завдання / сценарій, який прослуховує папку «Вхідні» для вхідних електронних листів, зніміть зображення та обробіть відповідно.

Це не ідеально, але вони натискають посилання з сафарі, а потім потрібно лише перейти до фотографій, скопіювати та повернутися до вашого додатку. Спробувавши це на своєму телефоні, це більше, ніж прийнятна робота, яка дозволяє мені рухатися вперед, не пишучи додаток.

    <div data-role="collapsible" data-collapsed="true" id="uploadPicContainer" data-theme="d">
    <h3>{l t='Upload Picture'}</h3>
    <a href="mailto:fotos@opina.com?subject={l t='My pictures of'} {$var_biz.bizname}[{$var_biz.id}]!&body={l t='To upload a picture go to your Camera Roll and copy paste an image to this area in the email.  We will apply your picture after review!'}">{l t='Click here to upload pictures of'} {$var_biz.bizname}</a>
</div>

Для вас це прийнятніше, тому що ви знаєте обмеження - мені цікаво бачити відповіді розробників, які не відповідають на такі програми. Це цікавий спосіб зробити це, і той, який покладається на інший метод, який користувачі вже знайомі - це може спрацювати і на те, що я намагаюся зробити.
Анджело Р.

Так. це чудова ідея. Повинен бути сценарій, який буде аналізувати вкладення. Для цього у Zend Framework є кілька приємних компонентів.
Святослав Марінов

6

Ви зможете завантажувати фотографії за допомогою сафарі в iOS 6 і далі. Хоча вищезазначені обхідні шляхи все одно будуть необхідними для iOS 5 і нижче.


2
чи є у вас інструкції щодо цього на iOS 6?
Вім Деблауве,


2

Safari на iOS 6.0 є першим, хто додав підтримку <input type="file">, дозволивши:

  • зробити нове відео чи фото
  • виберіть відео або фото з бібліотеки

Ось як це виглядає на iOS10:

Введення файлів iOS 10 без фільтра

iOS9 представив iCloud Drive та інші опції, включаючи Dropbox . iOS 6–8 мали лише два перші варіанти.

Ви можете обмежити типи файлів лише фотографіями, використовуючи accept="image/*"атрибут:

<input type="file" accept="image/*" > обмежить параметри лише фотографіями:

Введення файлів iOS 10 для фотографій

На стороні Android Android 2.2+ є першим, хто підтримує вищевказаний код.

Застереження: зображення люб'язно надано компанією Pipe, яка займається записом відео, де я працюю технічним директором


1

Ідея, про яку я тільки що подумав, полягає в тому, щоб мати текстове поле, в яке користувач міг би вставити URL-адресу, дозволяючи користувачеві використовувати dropbox або подібну програму та копіювати загальнодоступну URL-адресу файлу dropbox. Тоді сервер зможе завантажити з сервера dropbox.

Мені потрібно підтримувати типи файлів, крім зображень, так що, здається, picupapp мені не підійде.


0

Якщо ви все ще використовуєте iOS5, розгляньте можливість використання iCab Mobile. Зрозуміло для мого ipad і (принаймні для мене) завантаження файлів працює нормально.

З повагою, Петре


0

Тільки для iOS> = 6

<input type="file" accept="image/*" capture>

"Захоплення" нічого не змінює з iOS, але все одно корисно для інших пристроїв (мабуть, Android, див. коментарі).


capture="camera"(рядок) було замінено на capture="capture"Рекомендацію W3C щодо кандидатів. В обох випадках це працює лише на Android.
Октавіан Найку

@OctavianNaicu має сенс. Я відредагував відповідь. Дякую за інформацію
Ердал Г.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.