【问题标题】:Ionic Capacitor Camera Delete Image离子电容相机删除图片
【发布时间】:2020-08-13 15:42:02
【问题描述】:

我正在使用电容器camera api 来获取图像。我只是对 base64 编码的图像数据感兴趣。所以我不需要任何图像路径。我使用以下代码:

const image = await Camera.getPhoto({
    quality: 90,
    allowEditing: false,
    resultType: CameraResultType.Base64
});

我注意到用户制作的每张图片都会增加本地“用户数据”(在 Android 上测试)。图像存储在某处(在 Android 上:“Android/data/com.mypackage/files/Pictures”)我目前无法在 iOS 上对其进行测试。我猜它在那里的行为不同。

有什么好的方法可以删除这些图像文件吗? 如果我更改resultType,我可以获得图像路径,使用文件api读取图像并将其手动转换为base64,但这会使resultType设置无用。

有什么想法吗?

【问题讨论】:

    标签: ionic-framework capacitor


    【解决方案1】:

    在图像中完成后使用 Filesystem API 删除图像临时。

    如果您使用的是离子原生相机,请点击此处https://ionicframework.com/docs/v3/native/camera/,它有一个名为 cleanup() 的函数 - 在调用 camera.getPicture 后删除临时存储中的中间图像文件。仅当 Camera.sourceType 的值等于 Camera.PictureSourceType.CAMERA 且 Camera.destinationType 等于 Camera.DestinationType.FILE_URI 时才适用。

    【讨论】:

    • 感谢您的回答。但文档说cleanup() 仅适用于 iOS。
    猜你喜欢
    • 2021-04-26
    • 2021-12-06
    • 1970-01-01
    • 1970-01-01
    • 2020-03-21
    • 2022-10-25
    • 2022-10-18
    • 2019-02-16
    • 1970-01-01
    相关资源
    最近更新 更多