更新android中的静态资源文件

时间:2014-02-02 16:54:14

标签: android

我是Android开发的新手。

假设我的应用程序有一些静态HTML文件,我希望这些文件需要经常更新。假设每次文件更改时我都不想发布我的应用程序的新版本,但我确实想让这些文件保持最新。

我想我可以做的是在应用程序中编写一段代码以转到已知的URL并每隔几天检查一次更新。如果更新的资源包可用,代码将下载并解压缩,替换旧文件,以便用户可以看到最新发布的内容。

我的问题: - 这样的做法是好/坏的想法?换句话说,以这种方式进行更新还是它们的特殊缺点还是一种常见的做法? - 我怎么能实现这样的东西?服务?是否存在我可以重用的现有示例代码?

谢谢!

1 个答案:

答案 0 :(得分:2)

  

如果更新的资源包可用,代码将下载并解压缩,替换旧文件,以便用户可以看到最新的内容。

这很好,除了“替换旧文件”部分。资源是只读的,不能在运行时修改。但是,您可以调整使用这些文件的代码,首先查找已下载和缓存的更新文件,然后使用这些文件,如果没有更新,则回退到资源。

  

我该如何实现类似的东西?

如果您的应用涉及其他数据同步,并且您正在使用类似SyncManager的内容,请将这些文件包含在同步工作中。

否则,use AlarmManager会安排每隔一段时间获得一次控制以检查更新。您可能需要use WakefulBroadcastReceivermy WakefulIntentService进行实际下载,因为如果用户当时没有使用该设备,则设备将立即入睡。使用HttpUrlConnection或您喜欢的HTTP包装程序库将文件下载到getFilesDir()getCacheDir()