微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PhoneGap的getPicture()调用不会保存到Android手机上的图库

我一直在尝试使用PhoneGap功能用我的 Android手机拍照并将其保存到手机的图库中.我没有任何问题让他们的完整示例项目启动并运行,但代码永远不会保存图像.我们已经在Iphone上测试过没有任何问题,所以我想知道我做错了什么,或者这是另一个Android问题.

Phone Gap Example

以下是我根据我在网上看到的内容采取的步骤.

添加到app / res / xml / config.xml文件

<plugin name="Camera" value="org.apache.cordova.CameraLauncher" />

添加到清单文件

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

更改getPicture()中的选项以包含“savetoPhotoAlbum”选项

navigator.camera.getPicture(onPhotoDataSuccess,onFail,{ quality: 50,destinationType: destinationType.DATA_URL,savetoPhotoAlbum: true });

我也尝试将目的地类型更改为FILE_URI,但仍然没有运气.该应用程序仍然可以显示捕获的图像,所以我知道它已经走得那么远,我只是不知道为什么它没有保存到图库.

解决方法

我一直坚持同样的问题但使用jquery mobile.我还复制了apache cordova相机插件的工作示例.我只是在他们提供的.js文件中注释了整个代码并粘贴了从堆栈溢出复制的以下代码.它工作得很好,但有一个问题,图像将保存在底部,有一些日期为1970年,但它被保存.代码如下.

$('#capturePhotoButton').on('click',function () {
    alert('capturePhotoButton click() called');
    cameraGetPicture();

            });

function cameraGetPicture() {
    navigator.camera.getPicture(imageReceived,cameraFail,{
        quality: 50,destinationType: Camera.DestinationType.FILE_URI,allowEdit: false,savetoPhotoAlbum: true,correctOrientation: true        

    });
}

function imageReceived(imageURI) {
    var image = document.querySelector('img#smallImage');
    image.src = imageURI;
    imageURI = new steroids.File({
        path: "image.png",relativeto: steroids.app.userFilesPath

    });
}

function cameraFail(message) {
    alert("Camera error: " + message);
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐