UC浏览器 - 不负责任思考
前言
UC浏览器的辉煌应该是我读大学(2008年)的时候,转眼间,十年过去了,庆幸的是UC还在,我从使用者变成了一名UC的员工。
以下都是个人的不负责任的猜想或者思考
变更
塞班时代
UC浏览器的地位可以说是巨无霸的存在,手机上必备软件之一,想必大多数那个时代的人和我一样在课堂上用UC看着NBA文字直播,当时的流量还可以按K来统计,当时的手机都是按键的,当时还是NOKIA的天下,当时我还很年轻^_^
UC的杀手锏是流量压缩技术,无图模式,让用户在这小小屏幕上阅读有更好的体验
由于创始团队是从移动电信行业中过来的,预见了互联网跟移动设备的结合的时代到来
永福的产品分享中有这么几句话:
无线永远是有限的,有线永远是无限的。(现在听起来还是有点懵逼)
用户跟内容这条通道上,有几次变革:门户 -- 搜索 -- 浏览器
互联网上有三种流:信息流,人流,资金流,对应着BAT
安卓+IOS时代
随着NOKIA辉煌的慢慢褪去,现在00后估计不知道诺基亚是啥东西,估计也很难想象当时的手机造型可真是百花齐放,这个时代UC浏览器也快速更近,出安卓版本+IOS版本,全面转向移动互联网时代,内部好像称为第二次创业,这个时候浏览器的地位还是比较牢固的,UC的口碑无疑还是非常棒的,这里有个搞笑的点,因为UC可以搜索出来你懂的东西
现在的状况呢?
4G时代还正步入5G时代,一个广告都可能是十几M的时代了,到处都是WIFI,手机流量都是好几个G的,手机流量看高清视频毫无压力,流量压缩技术现在看来有点像个笑话;
APP横行,都是独立的app了,浏览器的形态很尴尬了,对于大多数用户来说现在的浏览器其实就是用来百度下的而已,看新闻我有专业的新闻app,看视频我有视频app,看漫画我有漫画app,听歌。。。
手机厂商的突起,Jobs的苹果重行定义了手机,iphone确实很棒,安卓的开源+苹果的商业形式,软硬件结合使得国内的手机厂商异常多,对用户来说很棒,选择更多了,看你们竞争,小米,魅族,oppo,vivo等等等。。都有自己的os,那么很大一部分用户都使用的是自带的浏览器,(其实永俞在分享中有提到了这点,在用户--内容这一层上,下一个变更应该就是在操作系统上,更底下了的)
网站的改变,响应式设计,之前还记得有wap站点的,现在都应该是响应式设计了,网站自动适配手机屏幕了的,这点感觉也让UC很尴尬
UC对应的改变就是,从浏览器这种工具性的 转向了 内容聚合平台 的形态,这种转变是浏览器的形态的转变,目前市面上的浏览器大多数都是如此。
困扰
UC的做法是不是伤害了用户体验了?
转变为内容聚合平台,在UC上可以看新闻,看视频,看小说,看漫画,可以搜索,可以玩游戏。。。他就是一个容器,或者更夸张的说就是一个操作系统,这是当年永福说的,这个概念就很像如今的小程序;但是用户来看,觉得一个浏览器而已,为啥干了这么多杂七杂八的事情呢?觉得UC浏览器越来越臃肿了;换句话说,如果UC能把这些功能做到极致了,能PK过那些原生APP了,用户可以只需要一个UC吗 ?尤其是现在容量也越来越不便宜了的 。。
其实UC也意识到了这个问题,因为有这么一个浏览器 -- 夸克浏览器,给搭建安利一下,纯工具形态的浏览器
在这差异性越来越小的世界,UC该怎么走呢?
浏览器的功能,说个不好听的的,大大小小的公司换个壳就是一个了的,核心优势没了,只能靠口碑活下去吗 ? 问了身边的朋友,使用UC的原因就是因为从塞班时代就开始用了的,习惯了,但现在都快卸载了,这应该整个浏览器形态的思考转变吧
技术
能翻到的资料不多,大致的流程和PC浏览器一致,UC浏览器在服务层做了一层解析排版
1. DNS域名解析
2. 获取IP和端口,建立连接
3. 发送请求,这一层是不是先发给了UC还需要确定下
4. 获取返回,UC服务层做了一层解析,让内容更好的适应手机屏幕
5. 手机展示
简单来说就是UC做了一层代理,让内容更符合手机的小屏幕;
当然UC也有自己的核心技术的,不然怎么在市场上屹立这么久的呢
结尾
现在提及UC,可能大家第一想到是UC震惊体,看到是UC越来越臃肿的样子
不知道大家还记得当时那可爱的小松鼠吗 ?
UC浏览器 - 不负责任思考的更多相关文章
- android仿微信红包动画、Kotlin综合应用、Xposed模块、炫酷下拉视觉、UC浏览器滑动动画等源码
Android精选源码 仿微信打开红包旋转动画 使用Kotlin编写的Android应用,内容你想象不到 Android手机上的免Root Android系统日志Viewer 一个能让微信 Mater ...
- 让你在PC上调试Web App,UC浏览器发布开发者版
目前,在手机上使用浏览器访问网页,无法便捷地进行网页语言调试.手机屏幕相对较小且操作不便,直接在手机上进行网页数据调试不太现实. 因此,UC使用技术将手机网页调试信息分离,实现一种能在大屏幕.高配置P ...
- 解决UC浏览器或微信浏览器上flex兼容问题
在UC浏览器上使用display:flex;时会不起作用,要加上兼容性写法,如下 display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */ disp ...
- UC浏览器 分享到朋友圈和微信好友 分类: JavaScript 2015-04-28 14:45 615人阅读 评论(1) 收藏
用手机UC浏览器访问新浪微博,会注意到有这样的两个分享按钮: 在手机端浏览器里,点击分享按钮,就可以启动微信客户端并分享到微信.研究了下其源代码,存在这样的一个js:http://mjs.sinaim ...
- 用手机自带uc浏览器查看静态页面,css样式不显示
问题描述: 这个问题是一个同事在写手机页面用UC浏览器测试以后遇到的,其他浏览器静态页面显示正常,唯独UC浏览器不显示页面样式. 我测试过代码是没有问题的,因为临时没有找到安卓手机,就猜想PC端的应该 ...
- 苹果浏览器和uc浏览器在移动端的坑(日常积累,随时更新)
先mark 1 . 移动端uc浏览器不兼容css3 calc() 2 . ie8下a标签没有内容给宽高也不能触发点击跳转 3 . safari输入框加上readOnly="ture&qu ...
- 如何使用 UC浏览器开发者版 进行移动端调试
在 如何用 fiddler 代理调试本地手机页 一文中我们了解了如何用手机查看 PC 端写的网页(本地),但是我们只能看到页面效果,如果哪段 js 挂了,那部分样式失效了,我们该如何进行调试呢?今天为 ...
- 移动端UC浏览器和QQ浏览器的部分私有meta属性
UC浏览器 1.设置屏幕横屏还是竖屏 <meta name="screen-orientation" content="portrait | landscape&q ...
- UC 浏览器远程调试手机web网页记录
浏览器远程调试插件有很多,本来要使用chrome浏览器的调试插件的,但是需要FQ才能使用(公司网络有限制,果断放弃),最终选择使用UC浏览器的. 其实UC官网插件使用已经介绍的很详细了,但是有几处坑需 ...
随机推荐
- RPDU
RPDU(Remote Power Distribution Unit) 又称网络电源控制系统.远程电源管理系统.智能PDU.智能电源分配系统,是由傲视恒安科技(北京)有限公司自主研发生产并在全国范围 ...
- [Robot Framework] 怎么做数学运算?
运用BuiltIn里面的Set Variable
- sqli-labs:1-4,基于报错的注入
sqli1: 脚本 # -*- coding: utf-8 -*- """ Created on Sat Mar 23 09:37:14 2019 @author: ke ...
- serde
一.背景 1.当进程在进行远程通信时,彼此可以发送各种类型的数据,无论是什么类型的数据都会以二进制序列的形式在网络上传送. 发送方需要把对象转化为字节序列才可在网络上传输,称为对象序列化: 接收方则需 ...
- boost的accumulator rolling_mean的使用
Boost.Accumulators is both a library for incremental statistical computation as well as an extensibl ...
- 提升HTML5的性能体验系列之二 列表流畅滑动
App的顶部一般有titlebar,下面是list.常见的一个需求是要在list滚动时,titlebar不动.这个简单的需求,实现起来其实并不简单. 在普通web上的做法是使用div的滚动条,把lis ...
- 第一个C#语言
第一个C#程序 .NET和C#的区别 1. C#只是.NET的一部分,.NET不止包含C# 2. C#是一种程序语言,.NET是一个平台.框架 IDE环境:vs 2012 VS2012的窗口结构 ...
- 2018.10.25 atcoder Leftmost Ball(计数dp+组合数学)
传送门 dp妙题啊. 我认为DZYODZYODZYO已经说的很好了. 强制规定球的排序方式. 然后就变成了一个求拓扑序数量的问题. 代码: #include<bits/stdc++.h> ...
- Java日期时间使用总结[转载]
Java日期时间使用总结 一.Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式 ...
- __getitem__()、__setitem__()与__delitem__()
# 如果想要运用[]取值,可以实现__getitem__() # 想要运用[]设值,可以实现__setitem__() # 若想通过del与[]来删除,可以实现__delitem__() class ...