2

Ibm Worklight 有调用本机应用程序的示例,但它是在 Worklight 本身中创建的,例如:module_09_1_Android_CombiningNativeAndWebPages 在这个示例中的 android 文件夹本身中,他们创建了一个活动“com.AndroidShowNativePage.HelloNative”(包名称),该活动是从该 javascript 调用的。

但是,我需要从工作灯中调用本机相机“ com.android.camera ”,这可能吗?如果是,请分享您的知识。提前致谢!!

4

2 回答 2

4

在您的应用程序中使用此功能。默认情况下,Cordova 插件安装在 worklight 应用程序中。你只需要调用它的功能

function takePicture() {

    navigator.camera.getPicture(
        function(data) {
            var img = dom.byId('camera_image');
            img.style.visibility = "visible";
            img.style.display = "block";
            //img.src = "data:image/jpeg;base64," + data;
            img.src = data;
            dom.byId('camera_status').innerHTML = "Success";
        },
        function(e) {
            console.log("Error getting picture: " + e);
            dom.byId('camera_status').innerHTML = e;
            dom.byId('camera_image').style.display = "none";
        },
        { quality: 50, destinationType: navigator.camera.DestinationType.FILE_URI, sourceType : navigator.camera.PictureSourceType.CAMERA});
};
于 2012-08-13T05:50:23.800 回答
2

为什么要编写适用于 Android 而不适用于 iPhone 的代码?Worklight 使用PhoneGap,因此您可以使用camera.getPicture 并将使用相机拍摄的base64 图像获取到您的应用程序。

navigator.camera.getPicture( cameraSuccess, cameraError, [ cameraOptions ] );

有关详细信息,请参阅 PhoneGap 文档 ( http://docs.phonegap.com/en/1.0.0/phonegap_camera_camera.md.html )。

于 2012-08-10T22:09:45.883 回答