【发布时间】:2012-09-29 05:41:24
【问题描述】:
我的资产文件夹中有一个小的 XML(KB) 文件。我的应用程序从中提取数据。但是后来我下载了文件的更新版本,我需要以某种方式替换它,但我不知道该怎么做?
由于我正在开发更高的 API`S,我可以使用 DownloadManager 类。
【问题讨论】:
标签: java android file overwrite download-manager
我的资产文件夹中有一个小的 XML(KB) 文件。我的应用程序从中提取数据。但是后来我下载了文件的更新版本,我需要以某种方式替换它,但我不知道该怎么做?
由于我正在开发更高的 API`S,我可以使用 DownloadManager 类。
【问题讨论】:
标签: java android file overwrite download-manager
您无法替换资产 - 资产与资源一样,都是只读的。
相反,您需要调整您的应用程序以检测您是否已下载替换文件,并在可用时使用该替换文件而不是资产。
【讨论】:
我的解决方案是:在我使用资产文件之前,我删除路径中的所有缓存文件---/data/data/com.yourpackagename.xxx,当然只是当应用程序版本高于旧应用程序版本时。(我应用程序首次运行时保存了 SharedPreferences。所以我可以比较应用程序版本)。 我不知道为什么新应用的资产资源存在,但解决方案对我有用!
ps:我的应用主页是一个网页视图和资产中的文件,所以,我需要在每次应用更新时替换它!
【讨论】: