Android Webview 加载显示比iOS慢的问题
来源:互联网 发布:最强牛股选股公式源码 编辑:程序博客网 时间:2024/06/06 12:47
前言
最近实现一个Webview加载文章,然后下面可以显示评论以及进行评论的界面。当进入这个界面的时候先来一个加载动画,当webview加载好了,在onPageFinished方法里面就隐藏起来加载动画显示文章界面内容。当功能实现完了以后发现一个问题。就是动画执行很久才消失,用户体验很不好,我估计当用户看完加载动画进去看文章时都没有心情看文章了。但是,当我在iPhone上效果时iOS的效果就很快,简直是秒进。
抱着试试看的态度我把同样的链接发送到了标杆--微信,使用微信打开,微信的速度也是不快,但是微信打开腾讯新闻,打开头条新闻链接就很快。然后就给我们的前端工程师反馈了一下,他唰唰唰改了几个地方,果然使用微信打开快了不亚于iOS效果了。但是我的动画执行的事件还是很长。我就想其实这时候界面已经渲染出来了,虽然没有完全渲染完,但是这时候应该让用户看到效果,不应该让用户继续等待了。
在网上搜了一下找到下面这几句话:
关于 JS 延迟加载
Android 的 OnPageFinished 事件会在 Javascript 脚本执行完成之后才会触发。如果在页面中使 用JQuery,会在处理完 DOM 对象,执行完 $(document).ready(function() {}); 事件自会后才会渲染并显示页面。而同样的页面在 iPhone 上却是载入相当的快,因为 iPhone 是显示完页面才会触发脚本的执行。所以我们这边的解决方案延迟 JS 脚本的载入,这个方面的问题是需要Web前端工程师帮忙优化的。
看到这上面的几句话我以为,这个问题必须让前端解决呢,原来Google给我们提供了一个方法,只不过我不知道,这个方法是
@Override public void onPageCommitVisible(WebView view, String url) { super.onPageCommitVisible(view, url); if(isLoading){ isLoading=false; gif_layout.setVisibility(View.GONE); //..... } }
可以在这个方法里面进行动画隐藏,这时候webview已经对用户可见了,不用放在onPageFinished方法里面了
- Android Webview 加载显示比iOS慢的问题
- android Webview加载腾讯视屏不显示问题
- 为什么android比ios慢
- Android显示webview加载的网页源码
- iOS webView以及WKWebView计算高度慢,加快加载速度等问题
- android webview 加载显示网页加载进度条的例子
- Android WebView加载后有白边框的问题
- Android WebView 加载网页遇到的问题
- Android WebView 样式加载异常的问题
- Android的WebView加载异常问题
- Android WebView加载后有白边框的问题
- 【Android】WebView加载https页面不能正常显示资源问题
- 【Android】WebView加载https页面不能正常显示资源问题
- Android WebView加载https页面不能正常显示资源问题
- android https加载WebView图片不显示问题
- Android WebView加载显示进度条
- Android加载WebView进度条显示
- android 中WebView 显示不全的问题
- 音频二--音乐
- anaconda下面安装opencv
- android 自定义ImageView控件实现圆形图片-适用于用户头像
- android 屏幕适配
- Python
- Android Webview 加载显示比iOS慢的问题
- 分析View的第一次绘制是在哪里完成的
- mysql 控制每次批量插入5w条记录思路
- 2440超详细uboot移植笔记(八)------支持NAND启动
- ConcurrentHashMap多线程下比HashTable效率更高
- hexo无法上传到github
- yii 多文件上传 php上传类代码
- 《深入分析JavaWeb技术内幕》读书笔记七.Servlet,Session与Cookie
- Tomcat服务器正常启动但是网页报404错误问题