Ibm mobilefirst IBM Worklight 6.0-移动浏览器模拟器中的Cordova摄像头模拟;行不通

Ibm mobilefirst IBM Worklight 6.0-移动浏览器模拟器中的Cordova摄像头模拟;行不通,ibm-mobilefirst,worklight-console,worklight-mbs,Ibm Mobilefirst,Worklight Console,Worklight Mbs,我的摄像头代码在WL5.0.6中运行良好,移动浏览器模拟器可以正确显示图像。现在我转到WL6.0,在移动浏览器模拟器中使用预览并使用Cordova摄像头模拟获取假图片时,我遇到以下错误 我正在使用Chrome进行预览 Not allowed to load local resource: file:///C:/Users/Administrator/cordova/internal/sim/camera/camera1_m.jpg wljq.js:2374 请注意,如果我使用DATA_URL,那

我的摄像头代码在WL5.0.6中运行良好,移动浏览器模拟器可以正确显示图像。现在我转到WL6.0,在移动浏览器模拟器中使用预览并使用Cordova摄像头模拟获取假图片时,我遇到以下错误

我正在使用Chrome进行预览

Not allowed to load local resource: file:///C:/Users/Administrator/cordova/internal/sim/camera/camera1_m.jpg wljq.js:2374
请注意,如果我使用DATA_URL,那么在移动浏览器模拟器中似乎没有问题。只是文件URI似乎与移动浏览器模拟器不兼容。

有趣的是,已经有一份解决问题的文档


看起来数据URL在WLv5中不起作用,而(如果您是对的)文件URI在WLv6之后就不起作用了。

有趣的是,已经有一个解决问题的文档


看起来数据URL在WLv5中不起作用,而(如果您是对的)文件URI在WLv6之后不起作用。

Worklight 6.0移动浏览器模拟器支持Cordova 2.6 API。对于navigator.camera.getPicture,WL 6.0中可以使用以下目标类型:

Camera.DestinationType = {
DATA_URL : 0,       // Return image as base64 encoded string  
FILE_URI : 1,       // Return image file URI  
NATIVE_URI : 2      // Return image native URI (eg. assets-library:// on iOS or   content:// on Android)
}; 
例如:

navigator.camera.getPicture(
        function(data) {            
document.getElementById('camera_status').innerHTML = "Success: picture  located at " +     data;

 var img = document.getElementById('camera_image');
                img.style.display = "none";
        },
        function(e) {
            console.log("Error getting picture: " + e);
            document.getElementById('camera_status').innerHTML = "Error getting picture.";
        },
        { quality: 50, destinationType: navigator.camera.DestinationType.FILE_URI, sourceType: navigator.camera.PictureSourceType.SAVEDPHOTOALBUM, encodingType: fileType});
尝试清除浏览器缓存,然后确保在移动浏览器模拟器启动时接受小程序权限对话框。另外,请确保您的文件权限允许从C:/Users//cordova/internal/sim/camera/文件夹进行传输,因为该文件夹是小程序存储摄像头sim图像内容的地方

Cordova 2.6摄像机API参考:
Worklight 6.0移动浏览器模拟器支持Cordova 2.6 API。对于navigator.camera.getPicture,WL 6.0中可以使用以下目标类型:

Camera.DestinationType = {
DATA_URL : 0,       // Return image as base64 encoded string  
FILE_URI : 1,       // Return image file URI  
NATIVE_URI : 2      // Return image native URI (eg. assets-library:// on iOS or   content:// on Android)
}; 
例如:

navigator.camera.getPicture(
        function(data) {            
document.getElementById('camera_status').innerHTML = "Success: picture  located at " +     data;

 var img = document.getElementById('camera_image');
                img.style.display = "none";
        },
        function(e) {
            console.log("Error getting picture: " + e);
            document.getElementById('camera_status').innerHTML = "Error getting picture.";
        },
        { quality: 50, destinationType: navigator.camera.DestinationType.FILE_URI, sourceType: navigator.camera.PictureSourceType.SAVEDPHOTOALBUM, encodingType: fileType});
尝试清除浏览器缓存,然后确保在移动浏览器模拟器启动时接受小程序权限对话框。另外,请确保您的文件权限允许从C:/Users//cordova/internal/sim/camera/文件夹进行传输,因为该文件夹是小程序存储摄像头sim图像内容的地方

Cordova 2.6摄像机API参考:

我刚试过。onSuccess回调收到一个错误的URI,它实际上指向用户文件夹:C:/Users//cordova/internal/sim/camera/…我刚刚尝试过。onSuccess回调收到一个错误的URI,它实际上指向用户文件夹:C:/Users//cordova/internal/sim/camera/。。。