我正在尝试为iOS,Android和Windows Phone开发跨平台应用。我已完成大部分编码,目前正在测试应用程序。我正在使用DevExtreme工具(来自DevExpress),据我所知,他们使用PhoneGap来打包本机应用程序。我在Android和Windows手机上安装了应用程序。
我的要求是使用相机拍照并将其发送到远程服务器而不将图像保存到设备。
我正在使用" Camera.destination" as" DATA_URL"它似乎与andoird和iOS一起正常工作。图像被发送到服务器,图像不显示在"保存的照片" (画廊/相册)。根据我的理解,我假设图像在这些设备的内存中,并且一旦应用程序关闭就丢弃Base64字符串。
Windows手机不会发生这种情况。我试过了,图像似乎总是保存在光盘上。我仍然看到应用程序成功将图像发送到远程服务器。我的要求是图像永远不会保存在光盘上。
navigator.camera.getPicture(onSuccess, onFail, {
quality: 50,
destinationType: Camera.DestinationType.DATA_URL
});
使用DATA_URL正确的方法吗?如果是这样,Windows手机不支持吗?
答案 0 :(得分:0)
如果您使用
destinationType: Camera.DestinationType.FILE_URI
它会将其保存到临时文件夹,并在离开应用程序时将其删除。它也是他们推荐的用例: http://docs.phonegap.com/en/1.2.0/phonegap_camera_camera.md.html
或者,您可以在使用之前添加一个检查以查看Camera.DestinationType.DATA_URL是否已设置且有效。可能是其他手机类型在未设置时具有默认值,但Windows手机程序没有。
除此之外,你总是可以硬编码0或1(取决于它应该如何接收)而不是变量(Camera.DestinationType.Data_URL)。