我有一个URL,我可以在webview中加载。如果我通过浏览器打开webview,则花费的时间会更少,但如果我在webview中加载URL,则需要更多时间。另外,如果我不得不在另一个屏幕上重复使用同一个webview页面,那么我无法做到这一点,因为如果我在不同的屏幕上使用同一个webview对象,那么加载URL也需要时间。如何提高网络视图加载时间
如何让我的web视图立即加载URL?
我有一个URL,我可以在webview中加载。如果我通过浏览器打开webview,则花费的时间会更少,但如果我在webview中加载URL,则需要更多时间。另外,如果我不得不在另一个屏幕上重复使用同一个webview页面,那么我无法做到这一点,因为如果我在不同的屏幕上使用同一个webview对象,那么加载URL也需要时间。如何提高网络视图加载时间
如何让我的web视图立即加载URL?
你可以尝试不同的缓存模式:http://developer.android.com/reference/android/webkit/WebSettings.html#setCacheMode%28int%29
或者,如果页面没有改变,只是使用loadDataWithBaseURL: http://developer.android.com/reference/android/webkit/WebView.html#loadDataWithBaseURL%28java.lang.String,%20java.lang.String,%20java.lang.String,%20java.lang.String,%20java.lang.String%29
你可以使用YSlow的或谷歌pageLoad的插件,您的浏览器,获取有关如何改善网页加载速度和加速页面的具体提示。
默认情况下,的WebView不提供类似浏览器的窗口小部件,不 启用JavaScript和网页错误被忽略。
这里我粘贴zirco-browser
settings.setJavaScriptEnabled(Controller.getInstance().getPreferences().getBoolean(Constants.PREFERENCES_BROWSER_ENABLE_JAVASCRIPT, true));
settings.setLoadsImagesAutomatically(Controller.getInstance().getPreferences().getBoolean(Constants.PREFERENCES_BROWSER_ENABLE_IMAGES, true));
settings.setUseWideViewPort(Controller.getInstance().getPreferences().getBoolean(Constants.PREFERENCES_BROWSER_USE_WIDE_VIEWPORT, true));
settings.setLoadWithOverviewMode(Controller.getInstance().getPreferences().getBoolean(Constants.PREFERENCES_BROWSER_LOAD_WITH_OVERVIEW, false));
settings.setSaveFormData(Controller.getInstance().getPreferences().getBoolean(Constants.PREFERENCES_BROWSER_ENABLE_FORM_DATA, true));
settings.setSavePassword(Controller.getInstance().getPreferences().getBoolean(Constants.PREFERENCES_BROWSER_ENABLE_PASSWORDS, true));
settings.setDefaultZoom(ZoomDensity.valueOf(Controller.getInstance().getPreferences().getString(Constants.PREFERENCES_DEFAULT_ZOOM_LEVEL, ZoomDensity.MEDIUM.toString())));
settings.setUserAgentString(Controller.getInstance().getPreferences().getString(Constants.PREFERENCES_BROWSER_USER_AGENT, Constants.USER_AGENT_DEFAULT));
你可以建议任何其他优化? :-) – 2014-02-04 14:21:12
@RavindranathAkila问题本身的代码lac用户尝试..不知道它,我只会建议我在我的回答中提到的 – dhams 2016-02-26 06:37:56
组绘制的优先级高的为您的Web视图可以解决问题,达到一定程度 代码小部分的一些这样的事
webview.getSettings().setRenderPriority(RenderPriority.HIGH);
它已被弃用 – AlexioVay 2016-05-26 13:49:50
的WebView交易速度灵活。如果您需要更快地处理网页内容,请考虑使用浏览器意图,而不是将WebView嵌入到您的应用中。您可以通过在WebView中禁用自由缓存来看到一些改进,如此解决方案中所示:http://stackoverflow.com/questions/3652583/enhance-webview-performance-should-be-the-same-performance-as - 本地网页浏览器/ 4799448#4799448 – Brian 2011-06-09 16:05:11
我做了两件事1)用户启动应用程序时调用Web视图的加载方法。 2)如果webview没有准备好,并且用户单击它的标签,然后显示一个加载器进度对话框 – Sandeep 2013-06-13 01:06:36
可能是,这个链接帮助你。 http://stackoverflow.com/questions/7422427/android-webview-slow – Azahar 2015-01-24 17:01:28