我有一个多平台应用 - iOS和Android。
该应用程序的一个功能是捕获图像。我在应用程序设置中有一个切换开关,允许用户在启用开关时将图像保存到设备图片相册。
这是我只能在Android中生成的问题。即使未启用切换开关,捕获的照片仍会保存到设备中。我在Android 4.4.2和6.0上测试了这个
在iOS中不会这样做。
我的代码中没有任何内容表明照片仍应保存,我已经反复检查过。
还有其他人遇到过这个吗?如果是这样,可以做些什么来纠正这个问题?
谢谢,
答案 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,然后就可以随意使用图片。