2014-05-22 7 views
6

Birlikte Cordova 3.4 kullanıyorum onSuccess veya onFail callback gelmez 3.4.0 Kamera Eklentisi ararım Cordova navigator.camera.getPicture Android 4.3 için

(https://github.com/apache/cordova-plugin-camera/blob/master/doc/index.md)

navigator.camera.getPicture(onSuccess, onFail, { 
     quality: 75, 
     destinationType: window.Camera.DestinationType.FILE_URI, 
     sourceType: window.Camera.PictureSourceType.CAMERA, 
     //allowEdit: true, 
     //cameraDirection: window.Camera.Direction.FRONT, 
     //encodingType: window.Camera.EncodingType.JPEG, 
     //targetWidth: 100, 
     //targetHeight: 100, 
     //popoverOptions: window.CameraPopoverOptions, 
     saveToPhotoAlbum: true 
    }); 
function onSuccess(imageData) { 
    alert(imageData); 
} 
function onFail(message) { 
    alert('Failed because: ' + message); 
} 
bu kod çalışır

Windows Phone 8.1 ama Android 4.3 (Jelly Bean) için çalışmıyor. Eclipse kod içine adım attığım zaman ben android temp dizini altında başarılı bir şekilde fotoğraf kaydeder ama JavaScript başarı veya tam olarak başarısız olay çağrısı görebilirsiniz, bu yüzden android üzerinde görüntü alamıyorum.

İkisi de Galaxy Note 2 gerçek aygıt ve emülatörünü denedim ve her ikisinde de başarısız olmadı.

Bu sorunla ilgili bilinen bir sorun veya çözüm var mı?

+0

Lütfen http://stackoverflow.com/questions/23653961/cordova-plugin-callback-received-after-second-plugin-call adresini kontrol edin. Uygulamanızı tam ekran modunda başlatıyor musunuz? –

+0

@Teoman Bu sorun çözüldü mü? Ben de aynı sorunu ile karşılaşıyorum cordova 3.5 – Konza

+0

Bu sorunu çözdünüz mü? .. – Aravin

cevap

0

bu seçenekleri deneyin:

destinationType: navigator.camera.DestinationType.FILE_URI 
sourceType: source 
mediaType: media 
+0

sourceType ve mediaType değerleri ne olmalıdır? geçerli bir şey var mı? –

+0

kaynak: navigator.camera.PictureSourceType.SAVEDPHOTOALBUM medya: navigator.camera.MediaType.PICTURE – Xcihnegn

+0

Merhaba Teoman shipahi, çalışıyor ya da değil? Teşekkürler! – Xcihnegn

0

bu çalışmıyorsa, bana bu seçenekleri önerdiğimiz. 4.2.2 (Jellybean) android ve 4.4.2'de (Kitkat) konuşlandırıldılar.

navigator.camera.getPicture(this.onPhotoDataSuccess, this.onFail, { 
      quality: 50, 
      destinationType: Camera.DestinationType.DATA_URL, 
      sourceType: Camera.PictureSourceType.CAMERA 

     }); 

// okuma ve DOM

onPhotoDataSuccess(imageData) { 
     var smallImage = document.getElementById('smallImage'); 
     smallImage.style.display = 'block'; 
     smallImage.src = "data:image/jpeg;base64," + imageData; 
    } 

ekleme Bu base64 kodlanmış resim döndürür.

+0

hiç çalışmıyor .. – Aravin

+0

Telefonunuza erişim sağlayan telefon için cordova hükümleriniz var mı? –

0

Bu, herhangi birine yardımcı olursa, aynı sorunu yaşadım. Uygulamanın Cordova "duraklatma" olayında "navigator.camera.cleanup()" dediği ortaya çıktı (böylece uygulama arka plana gönderildiğinde kaynakları temizlerdi). Sorun, kameranın uygulamayı arka plana göndermesiydi, bu yüzden görünüşe göre temizlik araması işleri kırıyordu.