我正在通过eclipse在android中构建一个RSS阅读器应用程序,用于我班上的作业。
我遇到的问题是:如何在离线状态下阅读RSS Feed。这意味着在线时我可以保存一些供线下阅读
非常感谢你能帮助我或建议我如何做到这一点
答案 0 :(得分:0)
WebView webView = new WebView( context );
webView.getSettings().setAppCacheMaxSize( 5 * 1024 * 1024 ); // 5MB
webView.getSettings().setAppCachePath( getApplicationContext().getCacheDir().getAbsolutePath() );
webView.getSettings().setAllowFileAccess( true );
webView.getSettings().setAppCacheEnabled( true );
webView.getSettings().setJavaScriptEnabled( true );
webView.getSettings().setCacheMode( WebSettings.LOAD_DEFAULT ); // load online by default
if ( !isNetworkAvailable() ) { // loading offline
webView.getSettings().setCacheMode( WebSettings.LOAD_CACHE_ELSE_NETWORK );
}
webView.loadUrl( "http://your.feed.url" );
这是您将网页脱机保存的方法。 isNetworkAvailable()
看起来像这样:
private boolean isNetworkAvailable() {
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService( CONNECTIVITY_SERVICE );
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
return activeNetworkInfo != null;
}
来源:WebView load website when online, load local file when offline