【问题标题】:How do you persist image references across app updates on iOS devices如何在 iOS 设备上跨应用更新保留图像引用
【发布时间】:2020-07-01 17:51:03
【问题描述】:

我开发了一个 Flutter 应用程序,它使用相机捕获图像,并使用 Shared Preferences 存储对图像文件的引用。

当我升级 iOS 应用程序时,Shared Preference 文件名按预期保留,但图像不再显示在 iOS 设备上(并且似乎不再存在)File(_imageFileRef).existsSync() 为假

例如,在 iPhone 上,图像文件保存为

/private/var/mobile/Containers/Data/Application/580A9879-23CD-413D-A785-DB910673DF74/tmp/some_guid_image_name.jpg

升级应用后,此文件似乎不再存在。

我应该将图像文件保存到 iOS 的哪个位置,以便它们在升级过程中持续存在?

该功能可在 Android 设备上完美运行。

【问题讨论】:

    标签: ios flutter persistent-storage flutter-ios


    【解决方案1】:

    没有收到任何答案,我深入研究了一下,发现...

    ...写入图像的tmp 目录用于存放不需要在应用程序启动之间保留的临时文件。当不再需要文件时,您的应用应从该目录中删除文件;但是,当您的应用程序未运行时,系统可能会清除此目录。 iTunes 或 iCloud 不备份此目录的内容。

    因此,为了让数据在应用更新时保持不变,我需要写入Documents 目录

    Info obtained from here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多