Swift iOS 检查文件是否已从 json 下载

Swift iOS check if a file has been downloaded from json

我有一个应用程序可以显示和播放从 json 文件中获取的播客列表,我想添加一个下载功能,但为此我只想显示一个下载图标如果还没有下载播客,有没有办法可以保存像 id 元素和播客标题这样的东西,这样我就可以检查它是否已经下载并保存在 phone 上?或者有更简单的方法吗?显然我想在显示列表之前执行此操作。

您可以使用 UserDefaults。 这是一个关于如何从 UserDefaults

中读取数组的示例
// Retrieves an array of strings from disk
func getDowloadedPodcasts() -> [String] {
    UserDefaults.standard.array(forKey: "downloadedPodcasts") as? [String] ?? []
}

下面是一个关于如何将新值附加到 UserDefaults 数组的示例

func addDownloadedPodcast(podcastId: String) {
    let downloadedPodcasts = getDowloadedPodcasts()
    downloadedPodcasts.append(podcastId)
    UserDefaults.standard.setValue(podcastId, forKey: "downloadedPodcasts")
}

请注意,仅此功能无法解决您的问题,也不是您问题的最佳解决方案,它们在这里只是为了展示使用 UserDefaults 和 read/write 从 non-volatile记忆