如何从ContentProvider进行网络i / o?

时间:2011-12-06 23:45:54

标签: android

我有一个ContentProvider,用于提供存储在服务器上的文档内容。内容通过ACTION_VIEW意图提供给另一个Android应用程序,或通过content:// ... URI提供给WebView。 ContentProvider在应用程序的缓存目录中保留文档缓存。

这是问题所在。当消费者要求提供不在缓存中的文档时,我需要通过网络获取它。当我尝试这个时,我得到一个例外,即在应用程序线程上不允许网络访问。我目前正在通过在将控制权传递给外部应用程序或浏览器之前在AsyncTask中预加载文档数据来解决此问题。这在大多数情况下都有效,但在边缘情况下并不完全可靠,例如当应用程序被换出然后重新加载时。

有什么建议吗?

0 个答案:

没有答案