เป็นไปได้หรือไม่ที่จะเขียนเว็บแอปพลิเคชัน HTML5 ที่ออกแบบมาสำหรับอุปกรณ์ iOS (iPad, iPhone, iPod Touch) ซึ่งสามารถอนุญาตให้ผู้ใช้อัปโหลดภาพจากระบบไฟล์ได้?
ลองนึกภาพการอัปโหลดรูปภาพใหม่ไปยัง twitter avatar ของคุณผ่านเว็บแอป
เป็นไปได้หรือไม่ที่จะเขียนเว็บแอปพลิเคชัน HTML5 ที่ออกแบบมาสำหรับอุปกรณ์ iOS (iPad, iPhone, iPod Touch) ซึ่งสามารถอนุญาตให้ผู้ใช้อัปโหลดภาพจากระบบไฟล์ได้?
ลองนึกภาพการอัปโหลดรูปภาพใหม่ไปยัง twitter avatar ของคุณผ่านเว็บแอป
คำตอบ:
อัปเดต: iOs 6 Safari จะรองรับการอัปโหลดวิดีโอและรูปภาพจากคลังรูปภาพ
====
ฉันเกลียดคำนี้ แต่มันเป็นไปไม่ได้ (ถึงตอนนี้) นี่คือเหตุผล:
1) ซาฟารีมือถือไม่รองรับการอัปโหลดอะไรเลย
2) mobile safari ไม่สามารถเข้าถึงส่วนประกอบ ios ได้ (จริงๆแล้วทำได้ แต่ผ่านphonegapเท่านั้น)
อีกวิธีหนึ่งในการแก้ไขปัญหานี้คือการให้ที่อยู่อีเมลส่วนตัวแก่ผู้ใช้ที่สามารถส่งอีเมลรูปภาพของตนไปให้เพื่ออัปโหลดอัตโนมัติ (เช่น photos+abc123@yoursite.com)
ต้องทำงานอีกเล็กน้อยในการตั้งค่า แต่จะให้ประสบการณ์ที่สอดคล้องกันสำหรับผู้ใช้ในทุกอุปกรณ์ (และผู้ใช้ที่ไม่ใช่มือถืออาจพบว่าสะดวกเช่นกัน)
ฉันชอบโซลูชัน picup ที่http://picupapp.com
ฉันพบวิธีแก้ไขที่ยอมรับได้สำหรับเรื่องนี้ เพิ่มลิงก์ mailTo บนหน้าพร้อมคำแนะนำที่กำหนดไว้ล่วงหน้าซึ่งจะแสดงให้ผู้ใช้เห็นวิธีคัดลอกวางรูปภาพจากม้วนฟิล์มลงในอีเมล จากนั้นเขียนงาน / สคริปต์ที่รับฟังกล่องจดหมายนั้นสำหรับอีเมลขาเข้าดึงรูปภาพและดำเนินการตามนั้น
มันไม่สมบูรณ์แบบ แต่พวกเขาคลิกลิงก์จากซาฟารีจากนั้นจะต้องไปที่รูปภาพคัดลอกและกลับมาที่แอปของคุณเท่านั้น หลังจากลองใช้งานบนโทรศัพท์ของฉันมันเป็นมากกว่าวิธีแก้ปัญหาที่ยอมรับได้ที่ทำให้ฉันก้าวไปข้างหน้าโดยไม่ต้องเขียนแอพ
<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>
คุณจะสามารถอัปโหลดรูปภาพโดยใช้ซาฟารีใน iOS 6 เป็นต้นไป แม้ว่าวิธีแก้ปัญหาข้างต้นจะยังคงเป็นสิ่งจำเป็นสำหรับ iOS 5 และต่ำกว่า
อีกโปรแกรมที่พื้นเมือง iOS (คล้ายกับ Picup หรือ iPhone-ภาพตัวเลือก) เป็นAurigma ขึ้น
Safari บน iOS 6.0เป็นครั้งแรกที่เพิ่มการรองรับ<input type="file">
โดยอนุญาตให้คุณ:
นี่คือลักษณะที่ปรากฏบน iOS10:
iOS9 แนะนำiCloud ไดรฟ์และเพิ่มเติมตัวเลือกทั้ง Dropbox iOS 6 ถึง 8 มีเพียงสองตัวเลือกแรกเท่านั้น
คุณสามารถ จำกัด ประเภทไฟล์ให้เป็นเพียงภาพถ่ายโดยใช้accept="image/*"
แอตทริบิวต์:
<input type="file" accept="image/*" >
จะ จำกัด ตัวเลือกให้เหลือเพียงภาพถ่าย:
ในฝั่งAndroid Android 2.2+เป็นเครื่องแรกที่รองรับโค้ดด้านบน
คำเตือน: รูปภาพเอื้อเฟื้อโดยPipeซึ่งจัดการการบันทึกวิดีโอโดยที่ฉันเป็น CTO
ความคิดที่ฉันคิดคือการมีกล่องข้อความที่ผู้ใช้สามารถวาง URL ลงในอนุญาตให้ผู้ใช้ใช้ดรอปบ็อกซ์หรือแอปที่คล้ายกันและคัดลอก URL สาธารณะของไฟล์ดรอปบ็อกซ์ จากนั้นเซิร์ฟเวอร์จะสามารถดาวน์โหลดจากเซิร์ฟเวอร์ดรอปบ็อกซ์
ฉันต้องการรองรับไฟล์ประเภทอื่นที่ไม่ใช่รูปภาพดังนั้นดูเหมือนว่า picupapp จะใช้ไม่ได้สำหรับฉัน
หากคุณยังคงใช้ iOS5 โปรดพิจารณาใช้iCab Mobile รับมันสำหรับ iPad ของฉันและ (อย่างน้อยสำหรับฉัน) การอัปโหลดไฟล์ก็ใช้ได้ดี
ขอแสดงความนับถือ Piotr
เฉพาะสำหรับ iOS> = 6
<input type="file" accept="image/*" capture>
"จับภาพ" ไม่ได้เปลี่ยนแปลงอะไรใน iOS แต่ยังมีประโยชน์สำหรับอุปกรณ์อื่น ๆ (เห็นได้ชัดว่าเป็น Android โปรดดูความคิดเห็น)
capture="camera"
(สตริง) ถูกแทนที่ด้วยcapture="capture"
ในคำแนะนำผู้สมัคร W3C ในทั้งสองกรณีนี้ใช้งานได้บน Android เท่านั้น