Android:保持与应用程序相关的本地文件的最新记录

Android:保持与应用程序相关的本地文件的最新记录,android,provider,local-files,Android,Provider,Local Files,我一直在阅读有关内容提供商和媒体商店的文章,但我仍然不确定解决这个常见问题的最佳方法是什么 为了简化,假设我想创建一个阅读电子书的应用程序。用户将以某种方式将电子书复制到设备存储器中(即:使用USB和计算机,从dropbox、电子邮件…)。 电子书可能有多种格式(mobi、epub等)。由于这些文件不是媒体文件,因此我无法将媒体存储用于此目的。还需要注意的是,我不希望为某些类型的文件(例如我的示例中的电子书)提供具体的解决方案。我想为所有类型的文件,即使是最奇异的解决方案有效 我想对设备存储器进

我一直在阅读有关内容提供商和媒体商店的文章,但我仍然不确定解决这个常见问题的最佳方法是什么

为了简化,假设我想创建一个阅读电子书的应用程序。用户将以某种方式将电子书复制到设备存储器中(即:使用USB和计算机,从dropbox、电子邮件…)。 电子书可能有多种格式(mobi、epub等)。由于这些文件不是媒体文件,因此我无法将媒体存储用于此目的。还需要注意的是,我不希望为某些类型的文件(例如我的示例中的电子书)提供具体的解决方案。我想为所有类型的文件,即使是最奇异的解决方案有效

我想对设备存储器进行扫描,以显示设备中保存的电子书列表。我想这应该在应用程序第一次启动时完成,如果用户想更新列表,则应该在启动后完成

我看到的问题是,用户可能会在我的应用程序之外删除一些电子书文件,因此它可能会显示一些不再存在的旧条目。当然,如果用户选择删除的条目,我可以显示一条错误消息,但可能有更好的解决方案


我的问题基本上是什么是保持文件列表最新的最佳策略。“最佳策略”的意思是,避免潜在的关键错误,并尽可能使所有内容对用户透明。

我认为,当用户选择删除的条目时,向用户显示错误消息是目前最好的方法。用户启动应用程序后,您还可以启动后台服务来检查文件列表。在大多数情况下,代码会比用户的反应更快。我认为应用程序可以在用户与数据交互之前进行自我更新。或者,您可以在更新数据时仅显示进度条,并在更新完成后显示数据(书籍)


或者,也有。但我认为这是不可能的。你需要一个后台服务来监视文件。这对电池寿命和设备性能都不好。

我认为当用户选择删除的条目时,向用户显示错误消息是目前最好的方法。用户启动应用程序后,您还可以启动后台服务来检查文件列表。在大多数情况下,代码会比用户的反应更快。我认为应用程序可以在用户与数据交互之前进行自我更新。或者,您可以在更新数据时仅显示进度条,并在更新完成后显示数据(书籍)

或者,也有。但我认为这是不可能的。你需要一个后台服务来监视文件。这对电池寿命和设备性能都不好