图像自动保存到设备图片专辑

时间:2016-10-28 13:28:59

标签: android delphi firemonkey delphi-xe8

我有一个多平台应用 - iOS和Android。

该应用程序的一个功能是捕获图像。我在应用程序设置中有一个切换开关,允许用户在启用开关时将图像保存到设备图片相册。

这是我只能在Android中生成的问题。即使未启用切换开关,捕获的照片仍会保存到设备中。我在Android 4.4.2和6.0上测试了这个

在iOS中不会这样做。

我的代码中没有任何内容表明照片仍应保存,我已经反复检查过。

还有其他人遇到过这个吗?如果是这样,可以做些什么来纠正这个问题?

谢谢,

1 个答案:

答案 0 :(得分:2)

这就是FireMonkey在Android上捕获图像的方式。在将像素数据传递给您之前,它会将捕获的图像保存到文件中。并且它不提供对捕获的图像文件名的访问权限,因此您可以在之后删除该文件。

FireMonkey的IFMXCameraService界面采用TakePhoto()方法,该方法接受NeedSaveToAlbum选项:

Taking Pictures Using FireMonkey Interfaces

然而,它目前在Android上被打破:

RSP-13118: [Android] TTakePhotoFromCameraAction saves Image on Disk unexpectedly

RSP-15820: IFMXCameraService TakePhoto , NeedSaveToAlbum False not working

在修复之前,您可以使用JNI直接访问Android的相机API,然后就可以随意使用图片。