Я прикладываю приложение для тестирования возможностей PhoneGap, чтобы впоследствии использовать его для больших проектов. Я пытался заставить API камеры работать, создав простое тестовое приложение, которое просто захватывает и отображает изображение. Странно то, что когда я нажимаю кнопку захвата, которая запускает navigate.camera.getPicture()
, я могу сделать снимок, но не подтвердить изображение, чтобы процесс вернулся в мое приложение и дал мне снятое изображение. Все остальные кнопки работают так, как ожидалось, поэтому я могу, например, нажать «Отмена», и он вернется обратно в мое приложение и запускает функцию, переданную как второй параметр, в navigate.camera.getPicture()
(обработчик ошибок).Камера PhoneGap не может подтвердить после захвата изображения
Вот как я называю navigate.camera.getPicture()
:
navigator.camera.getPicture(function(uri) {
// code to handle success
}, function(msg) {
// code to handle error
}, {
quality: 100,
destinationType: Camera.DestinationType.FILE_URI,
encodingType: Camera.EncodingType.PNG,
targetWidth: 2000,
targetHeight: 2000,
correctOrientation: true,
saveToPhotoAlbum: false
});
Я попытался прокомментировать все параметры конфигурации, за исключением DestinationType, чтобы увидеть, если это помогло.
Мой config.xml имеет эти строки, чтобы позволить для камеры:
<plugin name="Camera" value="org.apache.cordova.CameraLauncher" />
<feature name="http://api.phonegap.com/1.0/camera" />
Моя отлаживать среда является Galaxy Nexus работает Android 4.2.1.
Я также запускаю приложение под Ripple, которое работало безоговорочно, как ожидалось.
Приложение построено с помощью PhoneGap Build, а не Android SDK на моей машине, если это имеет значение.
Есть ли что-нибудь, что мне не хватает здесь?
Заранее спасибо =)
Какую версию Cordova вы используете? – poiuytrez
Последняя версия; 2.5.0 –
вы пробовали encodingType: Camera.EncodingType.JPEG ?, он работает в других устройствах Android? – gmh04