Ios 如何使用phonegap在sencha touch应用程序中启用摄像头功能?
我在Sencha Touch 2中开发了一个应用程序。我想以这样的方式设计一个页面 该页面有一个默认图像,下面有一个按钮。通过点击该按钮,设备摄像头应该打开(设备主要是iPad和iPhone),在捕获图像后,让我们看到它存储在设备中名为“捕获”的文件夹中。然后,捕获的图像应替换该默认图像Ios 如何使用phonegap在sencha touch应用程序中启用摄像头功能?,ios,cordova,sencha-touch-2,Ios,Cordova,Sencha Touch 2,我在Sencha Touch 2中开发了一个应用程序。我想以这样的方式设计一个页面 该页面有一个默认图像,下面有一个按钮。通过点击该按钮,设备摄像头应该打开(设备主要是iPad和iPhone),在捕获图像后,让我们看到它存储在设备中名为“捕获”的文件夹中。然后,捕获的图像应替换该默认图像 我想强制使用PhoneGap。我看过摄像头的PhoneGap API,但我不知道如何准确地使用它。我正在使用Mac和Xcode进行开发 使用sencha touch 2和Phonegap 1.4在我的应用程序中
我想强制使用PhoneGap。我看过摄像头的PhoneGap API,但我不知道如何准确地使用它。我正在使用Mac和Xcode进行开发 使用sencha touch 2和Phonegap 1.4在我的应用程序中 内部控制器 关于拍照按钮处理程序
onTakePhotoButton: function(){
// Retrieve image file location from specified source
navigator.camera.getPicture(uploadPhoto, function (message) {
alert('Get picture failed');
}, {
quality: 50,
destinationType: navigator.camera.DestinationType.FILE_URI,
sourceType: navigator.camera.PictureSourceType.CAMERA //or PHOTOLIBRARY
}
);
function uploadPhoto(imageURI) {
var options = new FileUploadOptions();
options.fileKey = "file";
var imagefilename = Number(new Date()) + ".jpg";
options.fileName = imagefilename;
options.mimeType = "image/jpeg";
options.chunkedMode = false;
var params = new Object();
params.image = imagefilename;
options.params = params;
var ft = new FileTransfer();
ft.upload(imageURI,your_request_upload_url_on_server, win, fail, options);
}
function win(r) {
console.log("Code = " + r.responseCode);
console.log("Response = " + r.response);
console.log("Sent = " + r.bytesSent);
var json_obj = Ext.decode(r.response);//remote server funciton upload return json type
if(json_obj!=null && json_obj.response.image_name!=null){
console.log(json_obj.response.image_name);
imageDisplay.setSrc(your_image_root_tmp+json_obj.response.image_name+'?dc='+Number(new Date()));
}else{
Ext.Msg.alert('Errors', "The server response failure!");
}
}
function fail(error) {
alert("An error has occurred: Code = " + error.code);
}
}
您可以在此处参考更多详细信息capturePhoto:function(){
请验证…Hi!您是否尝试过在线教程/doc中的示例?(第一个完整示例)嘿,我试过那个代码。但它在html按钮中工作。但在我的应用程序中,我使用模型视图控制器方法使用js文件创建按钮。这是一个sencha touch应用程序。请建议我如何实现?谢谢你能在你的帖子中添加用于创建按钮的js代码吗?好的,当然……谢谢,现在我可以访问相机了但无法将默认图像替换为我拍摄的图像。当我单击“使用”按钮时,它将消失,并且图像仍保留在那里…我正在发布我的代码请参见..谢谢我尝试了你的代码,但它不起作用。它显示空白页。我想问题是在同一js页面中声明多个函数。“navigator.camera.getPicture(onPhotoDataSuccess,onFail,{quality:100});”函数工作正常,但“onPhotoDataSuccess”“未调用函数。代码中也发生了同样的情况…建议一些替代方案..谢谢..Fabrery getPicture函数和回调uploadPhoto函数。uploadPhoto函数和回调win函数和fail函数。”。
navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50 });
function onPhotoDataSuccess(imageData) {
// Uncomment to view the base64 encoded image data
// console.log(imageData);
// Get image handle
//
var smallImage = document.getElementById('userLogo');
// Unhide image elements
//
smallImage.style.display = 'block';
// Show the captured photo
// The inline CSS rules are used to resize the image
//
smallImage.src = "data:image/jpeg;base64," + imageData;