Cep telefonlarına yönelik web uygulamamda (yerel uygulama değil), fotoğraf çekmek ve yüklemek istiyorum, ancak Adobe Flash kullanmak istemiyorum. Bunu yapmanın bir yolu var mı?
Cep telefonlarına yönelik web uygulamamda (yerel uygulama değil), fotoğraf çekmek ve yüklemek istiyorum, ancak Adobe Flash kullanmak istemiyorum. Bunu yapmanın bir yolu var mı?
Yanıtlar:
İPhone iOS6 ve Android ICS'den itibaren HTML5, cihazınızdan fotoğraf çekmenizi sağlayan aşağıdaki etikete sahiptir:
<input type="file" accept="image/*" capture="camera">
Capture
kamera, video kamera ve ses gibi değerleri alabilir.
Bu etiketin kesinlikle iOS5'te çalışmayacağını düşünüyorum, bundan emin değilim.
<input type="file" accept="image/*;capture=camera">
yerine olmalı . MDN'ye göre, capture
bir input
öğe için özellik yoktur .
capture="camera"
(String) hem de eskisi accept="image/*;capture=camera"
2012 yılında capture="capture"
(Boolean) ile değiştirildi . Öznitelik, kitaplıktan seçmek yerine yakalamayı zorlamak için kullanılır. Bkz spec ve HTML Medya Capture için Doğru Dizimi
Günümüzde en azından android ile nispeten kolaydır. Sadece normal dosya giriş etiketini kullanın ve kullanıcı tıkladığında telefon kullanıcının dosya yüklemek için kamera (veya dosya yöneticileri vb.) Kullanmak isteyip istemediğini soracaktır. Sadece kamera ile bir fotoğraf çekin, otomatik olarak eklenecek ve yüklenecektir.
İphone hakkında hiçbir fikrim yok. Belki birisi bunu aydınlatabilir. EDIT: Iphone benzer şekilde çalışır.
Giriş etiketi örneği:
<input type="file" accept="image/*" capture="camera">
multiple
hem Android hem de iOS üzerinde çalışır, bkz . HTML Media Capture için Doğru Sözdizimi
Sadece bunu güncellemek için standart şimdi:
<input type="file" name="image" accept="image/*" capture="environment">
çevreye duyarlı (arka) kameraya erişmek ve
<input type="file" name="image" accept="image/*" capture="user">
yüze bakan (ön) kamera için. Videoya erişmek için adında "görüntü" yerine "video" yazın.
İPhone 5c'de test edilmiştir, iOS 10.3.3 çalışmaktadır, yazılım 760 iyi çalışır.
İOS 6+ ve Android 2.2 ve üstü sürümlerde Safari ve Chrome, cihazınızın kamerasıyla fotoğraf çekmenizi veya mevcut bir kamerayı seçmenizi sağlayan HTML Media Capture'ı destekler:
<input type="file" accept="image/*">
İOS 10'da şu şekilde çalışır:
İOS10.3 + 'da Android 3.0+ ve Safari, capture
doğrudan kameraya atlamak için kullanılan özelliği de destekler .
<input type="file" accept="image/*" capture>
capture="camera"
(String) ve accept="image/*;capture=camera"
(Parameter) eski teknik özelliklerin bir parçasıydı ve bunların yerine capture
(Boolean) W3C Aday Önerisi getirildi .
Destek belgeleri: bu 2013 O'Reilly kitabı ve testlerim
capture
yerine deneyin capture="camera"
. Meraklı olan cihaz ve Android sürümü.
yerel cihaz kamerasına erişmek için yeni bir HTML5 özelliği var - "getUserMedia API"
NOT: HTML5, Android cihazlardaki bir web sayfasından fotoğraf yakalayabilir (en azından Honeycomb OS tarafından çalıştırılan en son sürümlerde; ancak iPhone'larda değil iOS 6'da işleyemez).
WEBRTC kullanabilirsiniz ancak maalesef tüm web tarayıcıları tarafından desteklenmemektedir. AŞAĞIDAKİ TARAYICILARIN KİMLERİN DESTEKLEDİĞİNİ GÖSTERME BAĞLANTISI http://caniuse.com/stream
Ve bu bağlantı size nasıl erişebileceğiniz hakkında bir fikir verir (örnek kod). http://www.html5rocks.com/en/tutorials/getusermedia/intro/
getUserMedia
aşırı dolu, <input type="file" accept="image/*">
hile yapacak.
AppMobi HTML5 SDK, bir zamanlar HTML5 tabanlı bir uygulamadan kamera dahil olmak üzere yerel cihaz işlevlerine erişim sözü verdi, ancak artık Google'a ait değil. Bunun yerine, bu gönderideki HTML5 tabanlı yanıtları deneyin .
Kameraya erişmek için getUserMedia'yı kullanmak isteyeceksiniz .
Bu eğiticide tarayıcıdan bir cihaz kameraya erişmenin temelleri açıklanmaktadır: https://medium.com/@aBenjamin765/make-a-camera-web-app-tutorial-part-1-ec284af8dddf
Not: Bu, çoğu Android cihazda ve yalnızca Safari'deki iOS'ta çalışır.
Uygulamanın yerel olarak yerel ana bilgisayar altında çalıştırılmasını veya GetUserMedia () için SSL üzerinden çalışmasını gerektiren güvenlik özelliklerinin uygulandığına dikkat edilmelidir.
Bu mevcut demolar birkaç çalışırken keşfetti ve işe yaramadı zaman dissapointed oldu! Bakınız: Yeni Güvenlik Kısıtlamaları
Yapabileceğinizi sanmıyorum - ses veya video almak için bir W3C taslak API var, ancak herhangi bir büyük mobil işletim sisteminde henüz bir uygulama yok.
İkinci en iyi seçenek Dennis'in PhoneGap kullanma önerisiyle devam etmektir. Bu, yerel bir uygulama oluşturmanız ve mobil uygulama mağazasına / pazar yerine eklemeniz gerektiği anlamına gelir.
Bazı ek mekanizmalar (yani Flash veya donanım API'sına erişime izin veren bir tür kapsayıcı) olmadan bir cep telefonunun kamerasına web tarayıcısından erişmenin herhangi bir yolunu bilmiyorum
İkincisi için PhoneGap'e bir göz atın: http://docs.phonegap.com/phonegap_camera_camera.md.html
Bununla kameraya en azından iOS ve Android tabanlı cihazlardan erişebilmelisiniz.