0

我正在尝试为 iOS、Android 和 Windows Phone 开发一个跨平台应用程序。我完成了大部分编码工作,目前正在测试应用程序。我正在使用 DevExtreme 工具(来自 DevExpress),据我所知,他们使用 PhoneGap 来打包原生应用程序。我在我的 Android 和 Windows 手机上加载了该应用程序。

我的要求是使用相机拍照并将其发送到远程服务器而不将图像保存到设备。

我使用“Camera.destination”作为“DATA_URL”,它似乎与andoird 和iOS 配合得很好。图像被发送到服务器并且图像不会显示在“已保存的照片”(图库/相册)中。根据我的理解,我假设图像在这些设备的内存中,并且一旦应用程序关闭,Base64 字符串就会被丢弃。

Windows 手机不会发生这种情况。我试过了,图像似乎总是保存在光盘上。我仍然看到该应用程序已成功将图像发送到远程服务器。我的要求是永远不要将图像保存在光盘上。

 navigator.camera.getPicture(onSuccess, onFail, {
            quality: 50,
            destinationType: Camera.DestinationType.DATA_URL
        });

使用 DATA_URL 是正确的方法吗?如果是这样,这不是 Windows 手机支持的吗?

4

1 回答 1

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)。

于 2014-04-29T17:23:35.713 回答