超级APP势不可挡--20190706_android 超级app-程序员宅基地

技术标签: 宏观分析  

 

文|航通社,作者|书航

从头开始制作一个手机操作系统,并让它至少站稳脚跟,甚至取得成功,这听起来像是天方夜谭。

甚至比尔·盖茨都承认,他们不能在手机领域复制 Windows 当年的成功,听凭 Android 崛起,并带来了一个 4000 亿美元的教训。[1]

但是,在内忧外患的催化之下,华为还是开发了用于替代 Android 的“鸿蒙”系统,它正准备向世界发出第一声啼哭。

“鸿蒙”的出现恰逢其时——相比历史上的那些艰难时刻,现在正是无限接近一个新的操作系统能走向成功的时机。

造生态,难于上青天

在大阪 G20 峰会结束后,美方称有望解除当前对华为的制裁,给了华为手机的海外业务一个意外惊喜。[2]

受制裁影响,谷歌服务套件将在 90 天宽限期之后也即今年 8 月底开始,无法在华为海外新机预装。诸多国外流行 Android 应用必须依赖此套件才可以运行。

这一纸禁令意味着华为手机将暂别谷歌一手搭建的海外应用生态,让用户恐慌,甚至在新加坡出现了低至 7 折的二手抛售。只是随后,因为有人觉得可以转手卖给中国大陆,价格又开始涨回来。[3]

在中国大陆,因为谷歌应用市场从未被正式准入,有需要使用谷歌服务和国外应用的用户,一般都能自学知识破解,也出现了一键傻瓜式的“谷歌安装器”。但对海外而言,这是否合法暂且不论,哪怕让用户手动多做一个操作,都会挡住很多只会一路下一步的人。

华为宣布他们有一个自研的备用操作系统,用于这种极端情形。它在媒体报道中有很多不同的名字,但最常用的是“鸿蒙”。据称这个系统可以跨手机、电脑、电视、汽车等多种设备使用,同时支持运行网页应用以及 Android 应用。[4]

跟自制芯片相比,自制操作系统听起来更“不靠谱”。消息公布一个多月以来,不断有人梳理国内外挑战 iOS、Android、Windows 和 macOS 四大系统的各种失败史。

现代操作系统从运行逻辑、界面、交互、硬件适配等多个方面,都已经高度趋同且非常成熟。虽然可能存在一些专利壁垒,但大家也多少都有规避的办法—— iOS 曾因为高通起诉,而微调多任务切换的动画效果。

唯一不同的地方,就在于生态。为你这个系统开发的第三方软件是否足够多?是否够用?该有的东西是不是都有?开发者和用户社群是否能够互相促进,像滚雪球一般越滚越大?

数不清过去有多少钱投入到操作系统开发之后打了水漂。像 WebOS 这样把用户体验做得超越时代的优秀系统,没能获得一线生机;而 Symbian、Windows Mobile 这样曾叱咤风云的旧日霸主,也都在短时间内匆匆陨落。

一切都可以归结于生态建设的失败,这真是关生死,定胜负的因素。

做得好,只因“做得早”?

如何从头开始构建一个成功的生态?我们从 iOS 讲起。

iPhone 初代并不支持第三方应用的安装,但是它在功能和操控上的划时代突破,吸引了全世界的关注。产品本身做得足够好,以至于人们产生巨大兴趣,这是让它马上能吸引到开发者的诱因。

多点触控加上支持桌面 Web 功能的浏览器,让当时的开发者只要做一个适合手机屏幕宽度的网页,就足以成为一个“App”。

Safari 浏览器支持把网页快捷方式放到桌面,图标也跟原生 App 一模一样。在 App Store 诞生初期,有很多 App 实际上只是一个浏览器的壳,把网页做了封装就上架了。放到现在,这是不可想象的。

App Store 一旦推出,苹果对 iPhone 的宣传重心就完全改为应用,对商店体系下开发者的宣传、推荐和培养过程,也基本是从此时开始成型,并被后人效仿。

另一方面,已有足够应用数量兜底的 App Store 保持了严格的准入机制,对直接安装商店外应用的“越狱”围追堵截,确保了收费应用开发者的权益。等到应用下载数、安装数、付费应用收入等指标纷纷创下新高,iOS 生态的地位已经不可撼动。

只是对于其它后面来的玩家而言,苹果获得这般成功的关键几乎就是三个字——做得早。

在另一边的开放阵营中,Android 成功的秘诀也是做得早。

在体验也不算差的 Windows Phone 7 出来的时候,它面对两个问题:一个是原先 Windows Mobile 的应用全都不能沿用,甚至不能移植过去,对微软而言相当于一切都要从零开始;二是既然是从零开始,这时候对面 Android 已经做了两年。而这两年里,微软致力于让大多数上市的 WM 6.5 手机支持全键盘,以发挥它移动 Office 的所谓“生产力”优势。

大体上,这就是盖茨慨叹的 4000 亿美元怎么损失掉的原因。

要建设一个经典的应用生态,需要的并不是大力出奇迹,反而用力过猛会适得其反。特别是,直接引用别人(说白了就是 Android)的生态系统,并且无脑移植过来的做法,只会搭建一座了无生气的“死城”。

我还记得微软当初在华推广 Windows Phone 应用开发之初,曾经许诺给报名的开发者都送一台外壳靓丽的诺基亚手机,所需要的仅仅是把开发者已有的安卓程序,以简单步骤转制为一个 Metro 应用就可以了。[5]

前面说过,因为“做得早”,iOS App Store 和谷歌应用商店,最早期都可以允许一些网页套了个壳的简单应用上架,仅仅过了两年,用户就再也不可能接受这种东西了。

而一键转换而来的应用,有时出现无法正常启动或界面错位等现象,商店也没有及时发现和处理,这导致用户看到各种各样跟安卓同名的应用,但使用体验却极为差劲。

种种原因让 Windows Phone 的应用商店被大小开发者抛弃。2015 年 3 月,支付宝发布 Apple Watch 适配却不愿更新已沉睡 3 年的 WP 客户端,引发用户不满。官微回复了一句:“你是1%,为什么要选择1%的生活?” [6]

这句话让“1%”成为中国 WP 用户的自嘲专有名词,直到微软彻底放弃自己的手机操作系统为止。

狂“收税”,围墙现裂痕

iOS 封闭的应用生态被人们形象的称为“围墙花园”,因为开发者想要突破这个“围墙”是基本不可能的;相比之下,Android 可以自由地分发和安装后缀为 APK 的安装包,因此走上了不同的发展道路。

人们对 iOS 的粘性,很大程度上是由众多开发者贡献的优质应用带来的。苹果却利用这种难以挣脱的粘性,对平台内的应用内付费(IAP)征收 30% 的手续费,开发者只能将这一成本转嫁到消费者身上。

这导致对于一些跨平台的产品,如果是在 iOS 客户端内购买诸如电影、音乐、游戏道具等商品,支付的费用要比在安卓或网页版购买贵三分之一。

2017 年,苹果针对中国部分应用中出现的对作者“打赏”的情况,宣称这也属于应用内付费。也就是说,在微信公众号、知乎专栏、视频直播应用等地的打赏也要被抽成 30%。这对于风行一时的内容创业生态是一大暴击。

iOS 形成的天然市场垄断地位,导致其中几乎每一个默认位置,对合作伙伴都是不菲的花销。今年 2 月份有分析指出,为了保住在 Safari 浏览器中的默认搜索引擎地位,谷歌在 2018 年度向苹果支付了 95 亿美元,相当于苹果 2018 年营收的 1/5。

该分析师计算,谷歌的这部分贡献,加上 App Store 的分成收入,两项占苹果 2018 年服务营收的比例高达51%,占毛利润比例更高达 70%。[7]

今年春季,苹果发布了一系列的内容订阅产品,收“苹果税”的习惯也沿袭到了这些新的服务身上,由于苹果提出的分成比例过高,一些主流的出版商选择抵制苹果杂志订阅服务 Apple News +。

从 2011 年开始,就有美国消费者提出对 App Store 高额抽成的诉讼。他们认为这增加了消费者获取同类服务的时候,相对安卓等其它用户付出的成本。

苹果认为他们不是合适的原告,因为商店抽成是面对开发者,而不是用户,应该由开发者来起诉。不过按照这个逻辑,开发者真的起诉了苹果之后,还能不能继续在 App Store 愉快的玩耍呢?

历经 8 年多的不断反复,直到今年 5 月,美国最高法院才以 5:4 的比例,判定苹果在这一阶段性的诉讼过程中败诉。也就是说,任何 iOS 的用户,而不仅限于开发者,也都可以提起反垄断诉讼。消息一出,苹果的股价大跌,投资者担心这会影响到苹果服务产品的盈利模式。[8]

受到这一判决结果的激励,在 iOS 开发者群体当中也有人挺身而出。6 月初,有两名开发者向苹果所在的圣何塞地方法院提起反垄断诉讼,称 iOS 只允许一家单独的应用商店运转,不允许其他第三方的商店,削弱了用户的自主选择权。如果这一诉求获得法院的支持,那其实也意味着在海外安卓系统当中只有 Google Play 商店的情况也要改变。[9]

目前这些案件都还在审理过程当中。唯一可以确定的是,这些小小的变化正推动着已经稳定运转了 10 多年的 App Store 模式发生变化。围墙花园的高墙开始出现了裂缝。

“轻应用”,跌倒再爬起

推动这一裂缝变得越来越大的,还有两个重要的因素。

在国内,全民普及的超级 App 纷纷推出了小程序,总算把手机网页充当 App 的多年志向部分实现。

小程序是一种封装好的基于 XML 变种语言的软件包,依赖母体 App 获得读取个人信息及调用手机硬件能力的权限,跨越 iOS 和 Android 平台限制,能够共享一致的用户体验。

不管是此前百度、UC 浏览器的“轻应用”,还是之后手机厂商推出的“快应用”,都不能像微信、支付宝、百度系、字节跳动系 App 一样,对所谓“网页应用”的推广起到这么大的推动作用。

在中国,人们习惯于在少数几个超大型的 App 当中完成几乎所有的事情。早在 PC 互联网时代,英语用户习惯使用 AOL、雅虎和谷歌的搜索框来获取信息,而中国人则锻炼出了使用密密麻麻的网址大全的习惯。

同样的风格差异也体现在中英文购物网站的区别上。淘宝、京东等网站摆满了商品信息,而亚马逊的每次改版都反其道而行之,尽可能追求页面的简洁。你很难简单评判两种习惯的优劣。

这些超级 App 成为一个笼罩在操作系统之上的新的平台层。华为要做“鸿蒙”,只要这几个超级 App 分别实现了适配,那么架设在上面的所有小程序生态都可以无缝转移过去,大大减少了人们适应新系统的障碍。

超级 App 挟用户而令商店,跟苹果和谷歌之间形成了亦敌亦友的关系。苹果曾强迫微信赞赏功能抽成 30% ,微信干脆先撤下赞赏能力,谈判一年,最后毫发无伤。在苹果的发布会上,微信经常被放在 iOS 的相关幻灯片上,作为中文应用的代表出现。

在国外,利用最新 Web 技术的渐进式网页应用(PWA)正成为潮流。新的 Web 标准令 PWA 不同于以前的手机版网页,具备了本地存储、调用分享接口等能力。

已经酝酿了 10 年以上的“网页应用”,之所以到了近一两年才有跟原生应用分庭抗礼的迹象,是因为技术终于到了成熟的时候。这就好像微软早在 2002 年就推出了平板电脑版的 Windows,但是最终实现平板电脑的“完全体”形态,却要等到苹果的 iPad。如果技术不到那个程度,揠苗助长不会有好结果。

早期的网页应用,因为操作系统的运算能力和后台驻留能力不足,导致页面不断的刷新,表单信息容易丢失。而且如果不在室内的 WiFi 环境之下,在手机上还容易因为断线而无法继续操作。当时的网页技术也不具备离线缓存的能力,也无法调用系统的摄像头、麦克风等硬件。

随着互联网标准的完善,除了以上提到的能力之外,网页的绘图效率也因为 CSS 和 HTML5 Canvas 的改进而提高;一些 3D 效果可以通过 WebGL 等技术,不用插件,直接在浏览器中实现。

甚至支付都不是问题—— Facebook 宣布推出的稳定币 Libra 必定会应用在众多内嵌 Facebook 框架的网页,即使是网页版的用户,也可以正常的收付款或查看钱包状态。

与此同时,5G 网络的普及和网络信号覆盖率的提升都意味着操作网页元素时,可以加载和缓存更多内容,避免应用崩溃。

PWA 最激动人心的地方,就是它的本质是一个网页。这意味着任何现代浏览器和操作系统都可以支持它们,并获得完全一致的使用体验。

PWA 已经获得了谷歌和微软应用商店的官方支持,可以获得跟原生应用类似的图标和启动方式;在 Windows 10 的将来版本中,PWA 更可像原生应用一样在“设置”里卸载。[10]

没有获得移动互联网“船票”的微软,和正打算推出新操作系统 Fuchsia 的谷歌,都把 PWA 看作是在当前的原生应用体系之外,新建生态的突破口。

在用户和开发者“以卵击石”般悲壮的法律挑战之外,中国的超级 App 和全球合作的 PWA 开放环境,共同给花园的围墙撕开更大的缺口。

不管是强大的厂商希望自己打破操作系统的区隔,还是小开发者以 Web 标准实现终极的跨平台编程,都是在实践一个由来已久的心愿:当初 Java 所提出的“写一次就到处运行”的理想,将在这些继承者身上得到延续。

结论

今年 4 月,有人因为主力办公电脑送修,所以不得不使用 10 年前的笔记本电脑工作。结果他意外地发现,虽然有点慢,但是不影响使用。10年前的电脑依然能够满足日常工作。开发者阮一峰评论说:[11]

“如果 2009 年让你去用 1999 年的电脑,那是不可想象的,根本没有实用性。但是,2019 年去用 2009 年的电脑,却是完全可行的。这说明,过去十年的硬件进展不太大,导致 10 年前的硬件不是那么过时。过去十年,进展主要体现在软件上面:软件功能更强大、使用更友好、界面更美观。”

多年前,航通社写过《软件应不应该更新到最新版》,表达了类似的看法。[12]

很多情况下,软件并不是越新越好。有些新版要求单机软件强制联网,加入你并不需要的会员功能和消息推送;有些新版和旧版,甚至同一版本的自家软件不兼容;有些产品更是从头到尾蜕变成另一款你不认识的软件。

上述问题都是操作系统原生应用普遍存在的。如果同一款软件有对应的网页版,那么只需要一个浏览器,就可以避免大部分烦恼。在桌面电脑上,浏览器就是我们所说的“超级 App”。

历史上,PC 操作系统的软件生态经历了从纯粹的单机软件,到出现 c/s(使用客户端与服务器交互)再到 b/s (使用浏览器与服务器交互)的过程。这一过程也在手机操作系统上得到重现,虽然其中经历了曲折反复。

眼下,由超级 App 和小程序、PWA、统一的 Web 标准以及 5G 等通信技术的进步,共同催化了在应用商店之外,一个全新的、开放的、跨平台的生态。

苹果曾经以 Flash 是一个闭源的技术为理由,在 iOS 中取消对 Flash 的支持,促成了这个风靡一时的网页技术的凋敝。但 iOS 和 Android 本身也不能免俗于掌控一个封闭平台的诱惑。

作为 iOS 和 Android “护城河”的应用商店,是再典型不过的“围墙花园”,正是花园的高墙挡住了历史上其它竞争操作系统的道路。现在,高墙终于开始出现了裂缝。

如果华为“鸿蒙”系统能仅仅凭借对大量 PWA 和小程序的兼容性,就成功站稳脚跟,这将是一个重要的标志,意味着头部操作系统长期积累而成的应用生态壁垒,今后将不再扮演像现在这么关键的角色。

而操作系统的地位,也将下降到作为一个承载浏览器和个别超级 App 的容器,不同系统之间的操作习惯几乎可以无感知地移植,这样用什么操作系统就再也不是一个问题。

这是“鸿蒙”的机会,也是我们所有人的机会。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/johnneyzhu/article/details/94850179

智能推荐

eclipse提示SyntaxError: Non-UTF-8 code starting with '\xc4' in file C:\Users\ 怎么解决_syntaxerror: non-utf-8 code starting with '\xc8' i-程序员宅基地

文章浏览阅读9.9k次,点赞2次,收藏9次。一、第一种方法首行增加,已测试可用。# coding=gbk程序中出现中文,运行的时候出现如下错误:SyntaxError: Non-UTF-8 code starting with 'xc1' in file C:...xxx.py on line 8, but no encoding declared; see http://python.org/dev/peps/pep-0263/ _syntaxerror: non-utf-8 code starting with '\xc8' in file c:\users\26743\desk

JAVA笔试代码找错_京东笔试括号匹配问题(代码找错)-程序员宅基地

文章浏览阅读111次。这一题,测试了好几种情况都通过了,例如:())(;((()));)))(((;(())));但是提交只能通过10%,我现在陷入死角了,求各位大佬帮忙;我这一题的思路是,遍历一遍字符串,假如最后结果栈中只有")("那么就判断一次交换可以成功,其他情况都不成功import java.util.Scanner;import java.util.Stack;/*** @Author: Taoyongpan..._笔试代码找错

pandas小记:pandas时间序列分析和处理Timeseries_x must be a pandas object-程序员宅基地

文章浏览阅读10w+次,点赞13次,收藏102次。http://blog.csdn.net/pipisorry/article/details/52209377pandas 最基本的时间序列类型就是以时间戳(TimeStamp)为 index 元素的 Series 类型。其它时间序列处理相关的包[P4J 0.6: Periodic light curve analysis tools based on Information Theory][p4_x must be a pandas object

vue中在哪个生命周期中dom被渲染_Vue.js 组件的生命周期-程序员宅基地

文章浏览阅读2.5k次。本文目录结构问题Vue组件的生命周期答案总共分为8个阶段创建前/后,载⼊前/后,更新前/后,销毁前/后创建前/后: 在 beforeCreate 阶段, vue 实例的挂载元素 el 和数据对象 data 都为undefined ,还未初始化。在 created 阶段, vue 实例的数据对象 data 有了,el还 没有载⼊前/后:在 beforeMount 阶段, vue 实例的 $el 和 ..._vue渲染dom是在哪个环节

服务器ubuntu18.04安装虚拟机并安装centos6.8系统---3(虚拟机安装centos6.8系统)_ubuntu18.4对应centos那个版本-程序员宅基地

文章浏览阅读1.2k次。前两篇在服务器上把远程界面和虚拟机都安装好了后,现在进入第一小节,安装操作系统,这里要安装的是centos6.8。 1、下载安装系统。 进入CentOS官方网站 https://www.centos.org,找到要下载的系统下载,怎么下载,这个网上有很多资料,就不赘述了,我本地网很慢,依然在服务器上下载了wget http://archive.kernel.org/centos-vau..._ubuntu18.4对应centos那个版本

ARL(灯塔)资产系统安装_灯塔安装-程序员宅基地

文章浏览阅读1.2w次,点赞10次,收藏46次。ARL灯塔是信息搜集的工具之一,一款基于Linux搭建的资源信息管理控制器,其作用就是搜集信息,可以快速侦察与目标关联的互联网资产,本次我们基于centos8.2进行搭建安装系统(目前暂不支持Windows)。前提:1.已经安装好docker //安装docker比较简单,不同系统安装命令略有差异,各位朋友自行百度安装即可2.已经安装好docker-compose安装docker-........._灯塔安装

随便推点

通用技术计算机辅助设计教案,高一通用技术课堂《设计的一般过程》的优秀教案...-程序员宅基地

文章浏览阅读263次。高一通用技术课堂《设计的一般过程》的优秀教案教学过程1. 引入新课多媒体投影展示几个新颖的设计,这些作品基于什么目的而设计的,它解决了什么问题?师:这些作品是怎么来的呢?生:设计出来的。师:我们要知道完成任何一件事情都有一个过程,须遵循一定的步骤,设计也不例外。通过前面的学习,我们已经知道,技术世界因设计而愈加精彩,设计是技术发展的关键。我们设计的最终目的是什么?就是为了解决人们的实际需要。那么同..._高一计算机技术与通用教案

POJ-3415-Common-Substring-后缀数组-并查集_并查集 poj 3415-程序员宅基地

文章浏览阅读172次。题目题目链接内容给两个字符串a,ba,ba,b ,和整数kkk 询问a,ba,ba,b的公共子串中长度大于等于kkk的个数分析对于一个长度为len(len>=k)len(len>=k)len(len>=k) 的公共子串,它对答案的贡献为len−k+1len-k+1len−k+1 ,我们构建后缀数组,将heightheightheight 数组排序,从大到小遍历hei..._并查集 poj 3415

linux脚本while死循环,shell编程之while死循环-程序员宅基地

文章浏览阅读2.5k次。在linux下编程的程序猿都知道shell脚本,就算你不怎么熟悉,也应该听过的吧!那在shell脚本中的死循环该怎么写呢?对于熟悉C语言的猿人们来说,最简单的死循环应该这样写:-------------------------------------------------------------------------while(1){//do something}---------------..._写一个死循环while(1)

成功人士的名言精选——看看你的名言是哪一句?你做到了吗?_brian tracy 名言-程序员宅基地

文章浏览阅读1k次。毋庸置疑,每个人都有自己的名言警句,因为有目标、因为有理想,我们都在拼命努地奋斗着、拼搏着,希望你的名言可以让你距离成功更进一步,相信自己! 1. Success is never a destination, it is a journey.—— Statenig St. Marie  成功不是终点,而是旅程。—— 斯塔特尼格·圣·玛_brian tracy 名言

python程序编译之后、找不到生成的pyc文件_浅谈python编译pyc工程--导包问题解决...-程序员宅基地

文章浏览阅读521次。利用python 编译工程,生产pyc文件pyc文件好处:是一种二进制机器码,并且隐藏了源文件代码,但是有和py文件一样的功能(可以理解为效果一样)所以可以将代码隐藏,便于商业价值,保护代码隐私还能和py文件一样可运行import compileallcompileall.compile_dir(r'/path')所以在一些情况下,需将源文件工程批量生成pyc文件来隐藏代码。上面代码即为 批量生成..._python 没有py文件调用pyc文件失败

抛弃格子衫和冲锋衣,程序员该如何穿?-程序员宅基地

文章浏览阅读111次。在众多人眼中,程序猿是最不会穿衣搭配的物种了,他们一年四季的标配就是格子衫加牛仔裤,冷的时候再加件冲锋衣。每到春夏,码农的大花格子衬衫就会在互联网公司的格子间遍地开花,如同冲锋衣是秋冬标配一样,格子衬衫就是程序员的夏季制服,一堆程序员在一起都不是连连看。人靠衣装,佛靠金装”这句话很多人都听过,但是放在心上的未必有几个,对于不善于穿衣打扮的程...序...员...来说,更是如此。根据聚能...