我们已经迁移了一个worklight 6.1应用程序和IBM mobilefirst 7.0平台以及所有功能在android环境中按预期工作,但在ios中我们面临一个问题:有一个名为"快速收据" 。点击按钮,设备相机打开并拍照。问题是照片没有显示 - 它只在ios设备上返回完整的空白页面但在Android设备上没有。 Camera.DestinationType.FILE_URI无法在IOS上运行。
出于安全原因,我们不会共享代码。这是类似的原型代码。
HTML
<div><img alt="QuickReceipts" src="resources/img/camera.png" onclick="imgCapture();"</div>
的JavaScript
imgCapture: function (){
navigator.camera.getPicture(this.onSuccess, this.onFail,{quality:80,destinationType:Camera.DestinationType.FILE_URI, targetWidth:600,targetHeight:1050}
},
onSuccess:function(imgData)
{
// applying the css and displaying the img
$("#imgReceipt").attr("src","data:image/jpeg;base64," +imgData);
$("#imgReceipt").css("display", "block");
}
onFail:function(imgData){
// failure msg
}
答案 0 :(得分:0)
一个建议是尝试对Nazmul提到的代码进行编码:http://www.telerik.com/forums/ios-cordova-3-5-0-camera-getpicture-targetwidth-issue。
另一个建议是从IBM Fix Central升级到最新的7.1 iFix,其中包含多项Cordova更正,可能会解决您的问题。
如果您的问题仍未解决,我建议您打开IBM PMR(支持服务单)。