谷歌如何限制华为?停止商业合作,(1)禁用GMS套件 (2)不能获取更新与适配优化
禁用GMS套件的影响?主要影响海外市场,外国一般都用GMS全家桶,很多软件都是基于GMS的(其实华为也有HMS)。
不能获取更新与影响?(1)Android 11 不能用 (2)后续华为的新手机新系统不能用Android 商标 (3)Android 新特性,如果华为想拥有,要么从AOSP上主动拉取新代码,要么自己开发。
鸿蒙如何规避谷歌限制? (1)使用AOSP 10 及 Art,系统后续会逐步下掉对AOSP的依赖。(2)开放开发者平台及开源OS,引导主流App迁移,打造Harmony生态;(3)兼容Android apk;平滑且几乎无差异的视觉交互;...
普通Android APK想运行在Harmony OS系统上,需要做什么适配吗?不需要。将来需要做适配吗?鸿蒙系统之间可以实现丰富的交互场景,可以基于这些需求点进行开发适配。
鸿蒙OS的特点?分布式的、可裁剪的、强调安全的。
鸿蒙系统与Android 系统的区别?
最核心的区别是鸿蒙对标的是谷歌下一代操作系统,Fuchsia。
(1)Harmony OS 的内核是 Linux + 微内核 + 鸿蒙内核(开发中),Android 是基于Linux内核的。
(2)Harmony是面向全场景,分布式的OS。
(3)Harmony OS 可以按需裁剪(到十几M),运行在手机,电视,手表及其他loT设备。
(4)视觉方面,Android 开发使用Java + xml,Harmony开发不仅支持Java + xml,也支持js + css。
(5)Android 中除了游戏开发,其他App基本都是View嵌套View,Harmony应该是使用Surface绘制的
(6)...
在这里要阐明AOSP,Google Mobile Service(GMS),Harmony OS 2.0 之间的关系。
首先,AOSP,Android Open Source Project( 使用 Apache2.0 许可),是Google 维护的开源项目,任何人都可以用,并且能够在商业场景使用,或者修改成闭源的,这能为Android 生态吸引大量厂商。Linux 基于GPL 协议,使用它的项目自己+子子孙孙都需要遵守GPL协议。所以Linux 把Android 从Linux分支中删除了。
其次,Android 是Google 的商标,必须得到 Google 授权,实现一些兼容性方面的东西,才可以使用。现在Google 与华为停止了商业合作,所以不能继续用“Android”的字眼。
第三:GMS(Google Mobile Services,谷歌移动服务)是闭源的。国内由于特殊的原因,本来就无法使用GMS。国外的产品,是基于GMS 自成生态的,定位,通知等服务,也是由GMS提供的。所以停止商业合作,影响的是华为的国外市场。
第四:Harmony OS 2.0,是华为自主研发的,鸿蒙系统是基于物联网的分布式系统。这个系统可以运行.apk文件,也可以运行.HAP文件(基于鸿蒙系统开发的文件)。
1.禁用Google Play(GMS套件)
2.禁止Android 系统的更新
在开源的基础上,谷歌自己开发维护了一套叫做闭源的GMS(Google Mobile Services,谷歌移动服务)的东西。
它就是很多APP 的基建设施,像“水电煤”一样重要。比如说你的 APP 要推送一条通知给用户,就必须用 GMS,要使用定位服务,也要用到 GMS。
谷歌自己的全家桶都是基于 GMS 的,事实上只要在安卓上开发应用,几乎所有 APP 都绕不过 GMS。
这次的“暂停商业合作”,就是不允许华为使用 GMS 了,同时华为也不能即使获得最新的安卓更新、定制适配优化等,因为这些都是属于商业合作。
国内的用户,完全感受不到这项禁令对自己的影响,GMS 在国内也是一直没法使用的状态。所以才有了MIUI,EMUI, OPPO,VIVO 这些手机厂商。
Google 停止商业合作后带来的限制:Android 商标与后续的更新适配,华为已无法使用;
海外市场的手机搭载的GMS套件,也无法使用,等于把华为踢出了GMS生态,缺乏这些服务的华为手机,难以被用户认可,华为进而失去大量的海外用户。
华为同时提供了HMS服务。
谷歌暂停和华为的商业合作,所以无法更新Android 11。
其实华为还是可以继续使用AOSP 10.0的。
简单来说,AOSP是一个开源的项目(Android 使用 Apache2.0 许可),虽然它的维护者是谷歌公司,但任何人都可以使用、加工,而谷歌不会干涉。
不兼容初期难以推广。
使用升级到鸿蒙OS 2.0 的测试机Huawei Mate 30 Pro ,连接ADB,使用 uname -a 命令,查看系统名称。
鸿蒙内部包含了AOSP,下列法律信息也佐证了这一点。鸿蒙应该是改了android.xxx 这个包名的。
设置 → 关于手机→ 法律信息 → 开放源代码许可
设置 → 关于手机→ 法律信息 → 系统WebView许可
鸿蒙 OS 仅仅只是系统底层有所更改,也就是说原先华为手机所用的安卓 + EMUI 现在换成了鸿蒙 OS 2.0+EMUI。
华为Lite OS是华为针对物联网产业推出的轻量级物联网操作系统,轻量级、低功耗、互联互通、组件丰富、快速开发……
鸿蒙OS
鸿蒙OS面向未来、面向全场景、分布式。在单设备系统能力基础上,鸿蒙OS提出了基于同一套系统能力、适配多种终端形态的分布式理念,支持多种终端设备。
二者相当于是Linux发行版与Linux内核的关系。
运行安全服务。无更多其他资料披露。除了Lite OS 和Linux 内核,鸿蒙内核还在开发中,用作什么也未有资料显示。
https://developer.harmonyos.com/cn/docs/
https://www.harmonyos.com/cn/develop
鸿蒙不仅支持Java 开发,也支持使用CSS + JS 开发(DevEco 工具 需要配置Node.js环境)
左图为Java 开发,右图为使用CSS + JS 开发。
1.项目结构、IDE工具与安卓开发有很大的类似之处,不排除都是JetBrains开发的缘故
2.鸿蒙中的Ability设计,与Activity也有异曲同工之处,都是类似状态机的状态转移模式。实际上具体时机还有区别。
3.同时,鸿蒙在Java开发环境下,可以使用XML开发视觉,但并不是与Android 相同的布局Layout。
4.鸿蒙的线程通信机制,也是Handler。但是Handler并不是安卓独有的线程通信机制,他是基于Java的通知机制。
5.打包成功之后,鸿蒙也有类似adb的命令,安装应用包(真机需在开发者帐号申请.p7b 等文件进行签名,否则无法安装:https://blog.csdn.net/weixin_52542088/article/details/111307435)
6.鸿蒙有类似AndroidManifest.xml 的配置文件,config.json,用于描述应用组件的关系和权限等各项配置信息。下图是解压后的hap文件,因为没有走签名流程,所以无签名信息
7.构建的中间产物,包含class.jar与class.dex。最终产物.hap文件解压后的结构如右图所示。
个人理解这些似曾相识的设计,正是为了让Android 的开发者,快速迁移到Harmony生态里去。
1.在视觉开发方面,鸿蒙不仅兼容旧的开发习惯,包括xml布局,更推荐使用js开发。大佬们认为基于xml的视觉开发是低效的。
2.鸿蒙提供的子系统,以及项目组织方式,是基于组件化的思想设计的,便于裁剪。
3.js + css 的开发方式,更接近于小程序开发。
4.视觉开发方面,Android的View,除了游戏开发,一般都是View嵌套View的。鸿蒙的视觉使用(graphic_lite)。依然使用Android开发的app,不受此影响。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有