1

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

为了简化,假设我想创建一个应用程序来阅读电子书。用户将以某种方式将他们的电子书复制到设备存储中(即:使用 USB 和他们的计算机,从保管箱、电子邮件......)。电子书可能有多种格式(mobi、epub、...)。由于这些文件不是媒体文件,因此我不能为此目的使用媒体商店。同样重要的是要注意,我不希望为某些类型的文件(例如我的示例中的电子书)提供具体的解决方案。我想要一个适用于所有类型文件的解决方案,即使是最奇特的文件。

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

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

我的问题基本上是使文件列表保持最新的最佳策略是什么。我所说的“最佳策略”是指避免潜在的严重错误并使一切对用户尽可能透明。

4

1 回答 1

1

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

或者,有FileObserver. 但这是不可能的,我认为。您需要后台服务来监视文件。这对电池寿命和设备性能不利。

于 2013-03-02T12:11:15.433 回答