Coding这些年,一直低头“搬砖”,好像从未仔细审视过Android的发展现状,亦未好好思考Android的发展前景。“低头干活,还要抬头看路”,写一篇文章简要审视一下Android的发展现状、展望一下Android的发展前景。

  • Android 诞生背景
  • Android 发展现状
  • Android 前景趋势

从Android的诞生背景开始说起,举例一些数据看一下Android当前的发展现状,最后结合数据看一下Android的未来发展。

一、诞生背景

2003年10月Andy Rubin、Rich Miner、Nick Sears、Chris White在美国加利福尼亚州 Palo Alto 成立了Android科技公司(Android Inc.)早期的研究方向是为数码相机开发先进的操作系统,但后来发现相机市场规模不大,加上智能手机的快速发展趋势,于是Android成为一款面向智能手机的操作系统。

2005年7月,谷歌收购了Android公司,使其成为谷歌旗下的一部分,后来谷歌透露收购Android目的是试图阻止微软在移动操作系统市场复制桌面市场的成功

2007年11月,谷歌宣布成立一个全球性的联盟组织——开放手持设备联盟(Open Handset Alliance),该组织由手机制造商(HTC、摩托罗拉、Samsung等)、电信运营商(中国移动、Sprint、T-Mobile)、芯片制造商(英伟达、高通、德州仪器等)等34家企业共同组成,目的是共同研发面向移动设备的综合性的开放平台,同时发布了基于Linux内核的Android操作系统,Android采用Apache Licence 2.0协议开源

2008年9月,第一款运行Android系统的商用智能手机是HTC Dream(HTC G1)正式发布

注:

了解开源协议可参考文章 开源协议详解

二、发展现状

  • Android 目前市场占比
  • Android 开源现状
  • Android 盈利模式

2.1、市场占比

Statcounter数据截至2021年4月全球移动操作系统中,谷歌Android占比高达72.2%苹果IOS占比26.99%,其余移动操作系统占比之和低于1%。

包含桌面操作系统在内的全球操作系统占比中Android以40.66%位列第一位,Windows位列第二,占比31.97%

Google官方2020年4月数据,Android已发布版本中各版本使用用户占比Android 10占比8.2%Android 9占比31.3%Android 8占比21.3%Android 7占比12.9%Android 6占比11.2%Android 5占比9.2%

Statcounter 2021年4月数据,Android已发布版本中各版本使用用户占比Android 11市场占比12.38%Android 10占比38.67%Android 9占比18.04%Android 8占比13.53%Android 7占比6.82%Android 6占比5.01%

相较于2020年数据,Android 10 版本用户在2020年9月前一直处于上升趋势上升拐点出现在2020年9月2020年9月9日 Android 11 正式版发布)。自Android 11正式发布,Android 11用户数量一直处于上升趋势,截止到2021年4月,已经占Android总用户量的12.38%

2.2、开源现状

Android是基于Linux内核的开源操作系统,由谷歌公司和开放手持设备联盟(Open Handset Alliance)领导以及开发,采用Apache Licence 2.0开源协议允许开发者根据需要进行修改,并可作为开源或商业产品进行发布与销售

( 了解开源协议可参考文章 开源协议详解

完整的Android包含 AOSP 和 GMS 。开源且免费的是AOSP(Android Open Source Project),对于GMS(Google Mobile Service)则需要谷歌授权才能使用

AOSP(Android Open Source Project

AOSP(Android Open Source Project) 包含了构成Android整个架构完整的代码实现,但不包含构成Android手机必要的部分上层App实现。例如,一直处于闭源状态的Gmail、Google Maps、YouTube、Chrome、Google Play等。

GMS(Google Mobile Service

国内很多人可能对 GMS(Google Mobile Service)不是很熟悉,GMS包含:

Chrome浏览器

YouTube

Google Play应用商店

Google Maps地图、

Google Cloud Messaging推送、

Google云存储

Google Ads

Google Wallet等相关服务。

以上技术和服务需经过谷歌单独授权才能使用,目前依据谷歌GMS授权不同,可以把搭载Android系统的手机厂商分为三个级别:

  • a、免费使用AOSP源码,但不内嵌GMS。

    这种多见于国内出售的安卓手机,例如:小米、华为、OPPO、VIVO的国内版本。
  • b、内嵌部分GMS服务,但手机不能打上谷歌商标。

    例如:三星、索尼等厂商在国外推出的机型。
  • c、内嵌所有GMS服务,也可以使用谷歌商标

    手机中内置所有GMS服务,等同于经过谷歌官方认证,例如:Nexus 系列手机设备。

目前国外销售的Android手机几乎全部依赖于GMS(Google Mobile Service)提供的推送云存储Google Play应用商店、Chrome等谷歌移动服务;

国内用户因GMS(Google Mobile Service)服务不可用国内各终端厂商一般采用自研推送应用市场云存储等方式代替GMS服务。

2.3、盈利模式

谷歌国外市场主要有以下几个盈利方式:GMS授权服务费移动搜索服务Google Play应用分发音乐、视频、书籍内容分发Google Maps、YouTube等应用内置广告收益

  • GMS授权服务费

    使用Android系统的手机、平板电脑的厂商,如果使用谷歌移动应用程序套件,必须向谷歌支付许可费,每台设备费用从2.5~40美元不等。
  • 移动搜索服务

    使用谷歌移动应用程序套件的Android手机、平板电脑,其浏览器默认的搜索引擎为谷歌搜索引擎。谷歌通过Android绑定其搜索服务,通过移动搜索服务带来大量广告、服务收入。
  • Google Play应用分发

    主要为应用市场的应用分发收入。目前收入包括注册成为Google Play应用开发者账号,每个账号需支付25美元;应用分发的推广费用。2021年9月30日开始,通过Google Play分发的付费应用,其应用内虚拟商品付费前100万美元谷歌将抽成15%高于100万美元抽成30%
  • 音乐、视频、电子书分发

    主要通过GMS包含的Google Play Movies、Google Play Music、Google Play Books等提供的音乐、视频、电子书的分发下载获取费用。
  • Google Maps、Youtube等应用内置广告收益

    这一部分主要是Google Maps、Youtube 等应用内置广告收益。

由于在国内市场GMS服务不可用(2010年3月23日谷歌宣布退出中国市场,国内各终端厂商纷纷采用自研推送、应用市场、云存储等方式代替谷歌GMS服务),谷歌在国内盈利方式仅余“手机厂商生产的海外版本的Android手机、平板电脑相关的GMS授权服务费”,利用国内Android手机厂商集成GMS服务并销售到海外的手机作为其盈利入口。

Statcounter 2021年4月数据国内搜索引擎市场谷歌占比仅为2.87%,国内的移动搜索服务入口基本被百度把持。

国内Android应用分发渠道主要被华为、小米、OPPO、VIVO等终端厂商以及腾讯的应用宝占据,国内应用、游戏渠道分发渠道被华、米、O、V以及应用宝把持。

三、前景趋势

谷歌于2007年11月正式发布面向手机、平板电脑的Android系统

谷歌于2014年11月正式发布面向穿戴市场的Android Wear,智能车载操作系统Android Auto, 智能电视操作系统Android TV;于2018年5月发布面向物联网智能操作系统Android Things

除了面向手机与平板电脑的Android操作系统外,Android Wear、Android Auto、Android TV、Android Things 均处于闭源状态。

3.1、闭源影响

面对日益增长的物联网市场,也许是因为谷歌在Android WearAndroid AutoAndroid TVAndroid Things 闭源,国内外很多终端设备厂商开始基于RTOSLiteOSLinuxAndroid自研面向物联网的操作系统

例如:华米(Amazfit)基于RTOS早期Android版本开发手环、手表等智能穿戴操作系统;三星基于Linux打造的Tizen操作系统,大量搭载在三星智能手表三星智能电视终端设备上;华为于2020年9月10日开源基于LiteOS的面向物联网设备的HarmonyOS 2.0

3.2、内核架构

基于Linux宏内核的Android操作系统,内核实现较为复杂,面向物联网市场,其内核裁剪较为困难,一定程度上导致基于Android Wear、Android Things的物联网设备对硬件要求较高耗电量较大

从Android Things停止更新也可以证实这一点(谷歌Android开发者官网宣布Android Things于2021年1月5日停止更新)。

Android Things是谷歌面向IoT(Internet of Things 物联网)设备开发的操作系统,基于Linux内核开发,最低内存要求512M。相对于许多的物联网设备因成本较低,最低内存要求可能仅32k,这一点也限制了Android Things的推广。

注:

宏内核VS微内核 相关知识可参考:一文读懂微内核

3.3、市场占比

面向手机、平板Android操作系统全球占比高达72.2%,目前处于统治地位(Statcounter 2021年4月数据)。

面向智能穿戴操作系统的Android Wear 2017年全球市场占比为18%,落后于苹果Apple Watch与三星的Tizen操作系统(Dazeinfo 2017年数据),加之各大终端厂商自研面向物联网的操作系统,Android Wear未来市场占比并不乐观

面向智能电视操作系统Android TV 2020年全球市场占比仅为4%三星的Tizen占比11%暂列第一,LG的WebOS与索尼PlayStation占比7%并列第二位,ROKU TV OS占比5%,亚马逊Fire OS占比5%,基于Android修改的小米电视占比3%Apple TV占比2%Strategy Analytics 2020年数据)。

智能车载操作系统方面,Blackberry QNX以其高运行效率高可靠性特点以及近40年工控领域使用经验,目前占据统治地位(Blackberry QNX 是一款安全性稳定性极高的微内核实时操作系统),例如:福特的Sync3、通用汽车的新安吉星系统、奥迪/大众系列虚拟驾驶舱都是基于QNX

2016年,由Linux基金会赞助的开源车载系统AGL(Automotive Grade Linux)项目发布2.0版本,AGL目前已得到丰田铃木戴姆勒福特本田捷豹路虎马自达三菱日产斯巴鲁等车企的支持并成立了AGL联盟

未来Android Auto若在智能车载系统撬动市场难度较大。

总结一下:

目前移动手持设备领域(手机、平板电脑)市场,Android与IOS市场占比之和甚至超过99%,加之相对完善的应用生态,未来很难有一个其他操作系统可以撬动这块市场

物联网领域,当前还属于百花齐放的状态(苹果虽然在穿戴市场占有绝对领先地位,但在其他物联网领域却介入较少),Android Wear、Android Auto、Android TV、Android Things在相对应的市场发展都不乐观架构实现方面,Android宏内核的架构实现,使其在系统安全性稳定性相对较差,系统可裁剪特性方面较为困难高耗电量更高的硬件要求,更使其很难满足物联网市场低成本设备的要求,因此在物联网市场,未来Android很难有所作为

注:

宏内核VS微内核 相关知识可参考:一文读懂微内核

参考:

statcounter:

https://gs.statcounter.com/os-market-share/mobile/china/#monthly-202004-202104

dazeinfo:

https://dazeinfo.com/2017/05/15/tizen-android-wear-market-share-q1-2017-2020/

counterpointresearch:

https://www.counterpointresearch.com/global-smartwatch-shipments-rise-1-5-2020-price-trends-going-premium/

android things:

https://developer.android.com/things

= THE END =

一文分析 Android现状及发展前景的更多相关文章

  1. 软件工程第4次作业------石墨文档Android客户端案例分析

    作业要求的博客链接:https://edu.cnblogs.com/campus/nenu/2016CS/homework/2505 分析产品:石墨文档Android客户端 第一部分 调研和评测 1. ...

  2. 从CM刷机过程和原理分析Android系统结构

    前面101篇文章都是分析Android系统源代码,似乎不够接地气. 假设能让Android系统源代码在真实设备上跑跑看效果,那该多好.这不就是传说中的刷ROM吗?刷ROM这个话题是老罗曾经一直避免谈的 ...

  3. 在Eclipse中使用MAT分析Android程序内存使用状况(转)

    对于Android这种手持设备来说,通常不会带有太大的内存,而且一般用户都是长时间不重启手机,所以编写程序的时候必须要非常小心的使用内存,尽量避免有内存泄露的问题出现.通常分析程序中潜在内存泄露的问题 ...

  4. 从Android系统出发,分析Android控件构架

    从Android系统出发,分析Android控件构架 Android中所有的控件追溯到根源,就是View 和ViewGroup,相信这个大家都知道,但是大家也许会不太清楚它们之间的具体关系是什么,在A ...

  5. 源码分析Android Handler是如何实现线程间通信的

    源码分析Android Handler是如何实现线程间通信的 Handler作为Android消息通信的基础,它的使用是每一个开发者都必须掌握的.开发者从一开始就被告知必须在主线程中进行UI操作.但H ...

  6. NLP+语篇分析(五)︱中文语篇分析研究现状(CIPS2016)

    摘录自:CIPS2016 中文信息处理报告<第三章 语篇分析研究进展.现状及趋势>P21 CIPS2016 中文信息处理报告下载链接:http://cips-upload.bj.bcebo ...

  7. Chapter2——如何分析Android程序

    前几天买了<Android软件安全与逆向分析>这本书,决定在这里记一些笔记. 第一章介绍了如何搭建环境,此处略去:第二章开始讲分析Android程序. 下面按顺序记录关键内容. ----- ...

  8. 深入理解Android(5)——从MediaScanner分析Android中的JNI

    前面几篇介绍了Android中的JNI和基本用法,这一篇我们通过分析Android源代码中的JNI实例,来对JNI部分做一个总结. 一.通向两个不同世界的桥梁 在前面我们说过,JNI就像一个桥梁,将J ...

  9. 从Handler+Message+Looper源代码带你分析Android系统的消息处理机制

    PS一句:不得不说CSDN同步做的非常烂.还得我花了近1个小时恢复这篇博客. 引言 [转载请注明出处:http://blog.csdn.net/feiduclear_up CSDN 废墟的树] 作为A ...

随机推荐

  1. Spring中IOC的理解

    Spring中IOC的理解 1.什么是IOC? (1)控制反转.把对象创建和对象间的调用过程交给Spring进行管理. (2)使用IOC的目的:为了耦合度降低. 2.IOC底层原理? (1)xml解析 ...

  2. Redis的一些常用命令

    查看所有键 keys * 首先先向数据库中插入一些键值对 演示keys *命令 keys *查询所有键的方式是遍历数据库中的键,其时间复杂度为O(n),如果数据库的数量一旦过大,其效率就大大降低,因此 ...

  3. 01Prism WPF 入门实战 - 项目准备

    1.概要 这一系列将进行Prism+WPF技术的实战讲解.实战项目内容选型为Email邮件收发的客户端(WeMail),项目结构简单方便大家理解. 相关技术:C#.WPF.Prism 软件开发环境:V ...

  4. NX开发库版本问题

    有做NX二次开发的朋友经常问我这样的问题:我在NX8.0上开发的程序,可以在NX9.0上运行吗? 由于NX的开发库随着版本的更新也会不断更新,会增加新的方法,同时有些也会过时或者消失. 如下图:NX8 ...

  5. change or reset WSL password

    change or reset WSL password To change or reset your password, open the Linux distribution and enter ...

  6. 网页常用的css特效让互动留住客户

    一般网站如果制作按钮,多做一些互动,可以让客户获得更好的体验. 例如鼠标滑过按钮,让背景颜色从左往右滑出来(或者从右往左都可以): <a target="_blank" hr ...

  7. (课内)信安数基RSA-level3-5

    emmmm感觉其实自己对这个的理解完全不够,原理只能写出这么个东西(悲) 代码完全是 攻击方式中(1)(2)内容的实现. lambda是一种可以理解为匿名函数的写法:写在这里看起来很酷炫(bushi) ...

  8. Vue3学习(八)之 Vue CLI多环境配置

    一.前言 这里相对于之前就没那么麻烦了,通俗点说就是使用配置文件来管理多环境,实现环境的切换. 二.实现切换 1.增加开发和生产配置文件 在web的根目录下,创建开发环境切换配置文件.env.dev, ...

  9. 什么是产品待办列表?(What is Product Backlog)

    正如scrum指南中所描述的,产品待办事项列表是一个紧急而有序的列表,其中列出了改进产品所需的内容.它是scrum团队承担的工作的唯一来源. 在sprint计划 (Sprint Planning)活动 ...

  10. FastAPI 学习之路(五十四)startup 和 shutdown

    我们在实际的开发中呢,总会遇到这样的场景,我们想在启动或者终止的时候,做一些事情,那么应该如何实现呢,其实也是很简单.fastapi提供了这样的操作. 那么我们看下具体是怎么实现的呢 app = Fa ...