一个 webview 页面,被产品吐槽首次加载太慢,于是想做一些优化,google 了一番找到 http://qianzui.github.io/blog/2015-03-29-httpresponsecache-source-code-analysis/ 这样的一篇文章,然后发给了客户端开发做参考。 以下为对话
--客户端开发:httpurlconnection
,浏览器不是用这两个类作请求的
--我方:那你们用的是什么,httpClient ?
--客户端开发:webkit ( 4.4 以下) chrome ( 4.4 以上)
请问我要怎么跟他沟通下去?
1
zhangchioulin 2018-04-19 17:58:35 +08:00
LZ 职位是领导还是?
1. 如果是领导的话我觉得可以强硬一些,让开发提供优化的方案。 2. 如果职级相等且不是客户端开发的话还是不要直接把链接给工程师‘参考’,因为工程师可能已经看过这方面的内容。除非 LZ 是这个领域的专家拥有话语权。 3. 我想 LZ 应该不是 PDM,如果是 PDM 的话私以为更万万不可发这个链接给工程师。因为工程师会以“你行你上”拒绝你。 以上是针对 LZ 的问题。 --- 以下是吐槽: WebView 加载慢原因非常多,直接发一个缓存优化恐怕有失妥当, 这种情况难道不是先排查瓶颈,确定应该是由前端还是移动端做优化吗?还是 LZ 那边的前端已经非常完美了? 以上是个人意见,如果有不同意见请 at 我。 我不一定会回。 |
2
zhangchioulin 2018-04-19 18:01:09 +08:00
貌似上面的回复都没有答到电上,精华一下吧:
如果是利益相关就叫上前端和客户端工程师一起坐下来谈 如果不是我想产品经理也应该不会找你吐槽~ |
3
fgodt 2018-04-19 18:19:52 +08:00
因为你这个帮不上忙啊
webview 是自己的一套逻辑 你这个是代码 HTTP 请求的方案 完全是两回事 |
4
3a3Mp112 2018-04-19 18:25:38 +08:00
WebView 加载慢原因非常多, 而且一般都不在客户端问题上。 请让后端人员检查。
|
5
Lonely 2018-04-19 18:29:19 +08:00 via iPhone 1
客户端: 怎么跟这种后端交流……
|
6
KuroNekoFan OP |
7
albertofwb 2018-04-19 18:32:45 +08:00 via Android
看了楼主描述吓一大跳,以为是我们产品经历在说我
|
8
lance6716 2018-04-19 18:36:43 +08:00 via Android
感觉 po 的点应该是:
- 我们不是靠 U 盘拷数据的 - 那是啥,scp ? - Windows 资源管理器 |
9
fgodt 2018-04-19 18:41:59 +08:00
@KuroNekoFan 那你就把这个也发给他告诉他让他尝试一下
语言上稍微谦和一点比如:麻烦尝试一下看看效果 和程序沟通要有技巧,你这么说他可能还是会不叼你,但私底下已经尝试了(因为他很有可能为了反驳你而尝试) |
10
zj299792458 2018-04-19 19:01:21 +08:00
所以你希望客户端开发自己去优化 webview 的 http 请求么?人人都是谷歌架构师?我看来客户端开发回答并没有问题,http 请求本来就是 webview 实现的,在没有定位问题的情况下,就让人家盲目地花时间修改实现方式是在浪费人家的时间。你好歹随便拿一个浏览器说,你看这个浏览器在同样环境下加载得比你的客户端快,这个锅才能到客户端这里。
|
11
3a3Mp112 2018-04-19 19:06:03 +08:00
你是不是对缓存有什么误解? 客户端缓存最多只能用来优化二次打开的速度,是没办法解决 "首次加载慢" 这个问题的 。
|
12
chenzakk 2018-04-19 19:15:16 +08:00 via iPhone
这个页面用浏览器打开快不快?不快一般就是服务器问题。
|
13
KuroNekoFan OP @3a3Mp112 在用户打开 webview 之前,客户端先用 httpurlconnection 访问 webview 中需要用到的资源,到用户真正打开 webview 的时候,虽然是首次打开 webview,但是对于其中资源的访问已经是第二次了,以此来减少 webview 下载资源的时间,这个不难理解吧?以一个客户端渲染的页面来说,html 本身一般只包含了对 js,css 的引用,可能 1kb 都不到,大头是 js 和 css,我想做的,就是预缓存 js 和 css
|
14
3a3Mp112 2018-04-19 19:17:53 +08:00
@KuroNekoFan 你还不如直接用 webview 加载,先把 webview 隐藏起来,需要的时候再显示。。 - -。
|
15
chenzakk 2018-04-19 19:22:54 +08:00 via iPhone
为什么很多页面不用楼主所谓的黑魔法都很快,呵呵哒。
|
16
KuroNekoFan OP @3a3Mp112 webview 业务那么多,如果一个页面有好 n 个 webview 入口,没理由去事先初始化 n 个 webview 隐藏起来吧
|
17
3a3Mp112 2018-04-19 19:45:04 +08:00
@KuroNekoFan 这个页面在别的浏览器访问也慢吗? 如果慢,那就不是客户端的问题。
|