android - 加载超过 500kb 的长 webview

标签 android webview load

我有一个 webview 和一个显示页面的超过 500kb 的字符串。有没有人知道减少 webview 的加载时间?我加载的方式是同步的,如果我异步加载它会更好吗?非常感谢任何帮助。

最佳答案

如果您想在其他 View 正常加载的情况下增加您的 WebView 的加载时间,您应该

  1. 创建一个将 Web View 对象传递给它的异步任务
  2. 放一个Thread.sleep(<time you want to wait>)在其中设置您要等待的时间,然后执行 loadData(<data>)
  3. 加载 View 时请调用 execute在您的异步任务上,它将执行 sleep ,然后在填充其他 View 时在后台加载。

这真的是你想要做的吗?

已更新

您不能通过异步加载来减少加载 Web View 所需的时间,但您可以阻止它在加载时阻止其他 View 加载。

如果页面在没有 Web View 的情况下有意义(看起来不乱),那么您可以将其加载到单独的线程( AsyncTask 或创建可运行类并调用 runOnUiThread() )任务,并更新该 View 准备就绪时。一个选项是从一个线程加载并使该线程的优先级较低,这样它很可能会等待 View 被渲染,然后开始繁重的 html 处理。

您还可以考虑将 html 拆分为单独的 View ,将动态内容嵌入标准 android View 或启动浏览器 Activity 并在那里显示

关于android - 加载超过 500kb 的长 webview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8475895/

相关文章:

android - 我如何获得所有 Android 应用程序类别名称?

Android:从 sdk 管理器更新我的 android sdk 后

java - 将 onClick 函数添加到 ActionBar 中的项目 (Android)

android - 将 instagram 嵌入到 Android WebView 中

回调后 jquery 不工作

iphone - 在 Titanium 中,如何从代码执行按钮单击事件?

javascript - onPageFinished Javascript WebView

javascript - 如何将 javascript 重定向加载到 android webview 中?

c++ - 在多处理器环境中可以同时执行多个加载/存储指令吗

javascript - 检测广告是否加载