重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
一、在华为如日中天的时候,华为都没敢推鸿蒙系统,而是把鸿蒙系统当作“备胎”慢慢发展。现在,华为被制裁了,只能把鸿蒙系统紧急推出来了。至少,鸿蒙是仓促上马的系统,却要和一个已经发展许多年,非常成熟的安卓系统竞争,还能轻而易举地赢了!三星真要哭死在厕所里了。昔日三星联合了英特尔搞出来的Tizen系统,还是按部就班进行的研发,依旧是无法弄出自己的生态圈,最后只能沦落成家电的系统了。从这个角度来看,安卓工程师不用太担心安卓的生态系统被威胁,鸿蒙的生态圈很难发展到能够与安卓比较。
创新互联专业为企业提供江孜网站建设、江孜做网站、江孜网站设计、江孜网站制作等企业网站建设、网页设计与制作、江孜企业网站模板建站服务,10多年江孜做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
二、华为自己都说了,鸿蒙系统当初设计就是想做家电的系统,是与三星Tizen类似的东西,主要应用方向是家电和物联网。现在是因为制裁的原因,赶鸭子上架成为了手机系统。这种临时改变用途的系统需要大动干戈才能完善对手机的应用支持。可以想象,如果鸿蒙系统对手机的支持有缺陷的话,做手机应用就会非常困难。也因此有理由相信,现在鸿蒙手机如果对安卓应用的支持特别完美,就更说明鸿蒙的“拉皮”可能性了。如此一来,安卓工程师就安心开发安卓应用就好了,因为鸿蒙一定可以完美运行你的应用,这就没有放弃安卓开发的必要了嘛!
至此,我想现在考虑鸿蒙把安卓的阵地攻破了实在是太早了。所以,大概率,没有哪个安卓工程师会放弃安卓去弄鸿蒙,顶多是测试一下应用能不能在鸿蒙环境下运行罢了。还是把兼容性这件事儿交给鸿蒙去搞吧。
鸿蒙出来的话,安卓工程师并不会失业,取决于自己想不想在鸿蒙上开发软件。
鸿蒙的应用程序开发,主要是基于Java和NodeJS,基于Java的整体框架结构与安卓极其相似,加上其开发环境DevEco Studio与Android Studio同宗,安卓工程师可以极短的时间迅速上手鸿蒙应用程序的开发。当然,一些做前端开发的小伙伴也会进入鸿蒙平台进行开发,但这部分小伙伴往往是会用一套代码、同时适配多个应用平台(类似国产的uni-app),这些本身就在和安卓开发有一种竞争关系,并不会因为鸿蒙的生产而发生多大变化。
另外鸿蒙的开发平台,也可以很轻松在智能屏、智能手表、车载智能设备等设备上调试开发,总体来说,如果鸿蒙火起来,就会有更多的软件开发需求了,安卓开发工程师会更吃香。建议大家多多接触鸿蒙生态,多学一点知识对自己是一个积累储备,总不会是坏事。
错,是谷歌、微软和苹果要倒闭了!
鸿蒙系统配备方舟编译器,兼容安卓应用,但运行效率……(此处省略1000字,翻2019年文章)……鸿蒙系统能在所有设备运行,支持手机、电脑、平板、物联网……(此处省略1000字,翻2019年文章)……
我想说的是你们太不懂华为了,其实鸿蒙早已开发完成并且随时可用!他一直在忍,在等一个机会……
作为一名android开发工程师,我想说,失业是不可能的,这辈子都不可能失业!
也许身为移动端开发人员的我们,正处于一段乱流之中!
首先,来谈谈android的碎片化问题。
仅仅2014年,全球支持Android的机型为18796种,再来看看国内,华为、小米、oppo、vivo...,android手机厂商也很多,每个品牌都是基于android开源系统改造,android开发人员要在完成软件功能的同时,对不同品牌的手机做功能适配,非常麻烦。
除了手机品牌数量多,手机屏幕的尺寸适配问题也很麻烦,往往一个软件的开发,有60%的时间在适配工作上。
是的,现在鸿蒙来了,意味着什么?意味着android开发人员有必要或者就必须去学习一门新语言、一个新系统的开发、适配,对于一个企业来说,要么就增加人工成本请一个鸿蒙系统开发人员,要么就强制在职android开发人员重新开发一遍软件适配鸿蒙系统。
基于此,不知道有多少android开发人员会买账,不知道多少企业会加个鸿蒙系统平台,不知道鸿蒙系统能不能站住脚推广开来。
虽然现在鸿蒙系统可以兼容android应用,但以后必然会两级分化。
如果鸿蒙系统没有革命性的突破,如果美国不再卡脖子,如果没有国家的干预措施,只靠平民大众自觉爱国的方式支持鸿蒙系统,我看很悬啊,毕竟,苹果手机在国内的销量一如既往!!!
再者,在手机行业,小米、oppo等手机厂商和华为本是竞争关系,会放弃自己的系统换成鸿蒙系统吗?这样的话,其他手机厂商的生存空间会一天不如一天,就算鸿蒙开源使用,也只不过走android碎片化的老路!
系统之争本就不是一朝一夕,不用担心会不会失业,路,还很长!
开发鸿蒙只能在华为支持的鸿蒙设备上运行,开发android,可以在所有安卓设备包括鸿蒙设备上也兼容运行,何来失业
做安卓的一天不用就能写鸿蒙。可以忽悠甲方加钱了[泪奔]
中国北斗早就出来了,GPS的工程师没失业吧!
不会,可以学习一下华为鸿蒙开发教程。
是得我就是干这个 但是我都计划改行了
不会失业的,他们可以转鸿蒙开发,非常简单
华为鸿蒙系统与安卓在系统架构上有着本质的区别。
鸿蒙与安卓一样,基于Linux内核研发鸿蒙操作系统,鸿蒙系统与安卓系统能够最大程度地兼容,初衷是对标安卓系统,补齐华为缺失的生态,不是超越、颠覆安卓,而是与安卓长期并存,由于兼容,两者的生态具有高度相似性。
华为鸿蒙系统是一款全新的面向全场景的分布式操作系统,创造一个超级虚拟终端互联的世界,将人、设备、场景有机地联系在一起,将消费者在全场景生活中接触的多种智能终端实现极速发现、极速连接、硬件互助、资源共享,用最合适的设备提供最佳的场景体验。鸿蒙OS是一款基于微内核面向全场景的分布式操作系统。
微内核
华为鸿蒙系统与安卓在系统架构上有着本质的区别,其中安卓是基于宏内核而鸿蒙则是基于微内核开发的。
在宏内核模式的架构中,它把很多的东西都集成进内核里面了,使得系统在运行的过程中内核与各个进程的联系非常紧密。虽然在这种架构下,系统运行的效率较高,但是却存在致命的Bug。在运行过程中,开发进程一旦发生故障将会导致整个操作系统出现问题,甚至直接挂掉,所以它的稳定性差。
在微内核模式的架构中,操作系统提供的是最核心、最必要、最精简的功能。在系统运行的过程中,所有的进程都拥有自己的独立地址空间,彼此之间互不干扰,由内核进行最基本的调度和内存管理。如果某个进程出现错误时,只需要相应地修正某个错误就行了,极大程度地保证了系统的稳定性。
技术架构
安卓系统架构
Android是用Java语言编写的,很容易学习。但它有一个缺点:不能与系统底层直接进行通信活动,必须通过虚拟机来运行。说直接点就是虚拟机相当于传递者:首先Android应用程序安装在虚拟机上,然后从虚拟机传输到机器的底部,如果虚拟机出了问题话的那系统就是卡住。
Android系统架构分为四层架构,从高到低分别是应用层,应用框架层,系统运行层和Linux内核层。
鸿蒙系统架构
鸿蒙操作系统是微内核设计:微内核仅包括了操作系统必要的功能模块(任务管理、内存分配等)处在核心地位具有最高权限,其他模块不具有最高权限,也就是说其他模块出现问题,对于整个系统的运行是没有阻碍的。微内核的开发难度很大,但是系统的稳定性很高。
根据目前华为公布的一些资料信息,我们可以推断出鸿蒙系统是用C、C++语言编写即直接使用机器语言编写app,取消安卓系统的ART虚拟机,直接编译为二进制机器码,这样做的好处就是不需要中转,执行速度快;但这样的操作也有一些缺点就是必须要有大量的静态方案且内存空间要求更高。
鸿蒙系统架构也分为4层分别为:应用层,程序框架层,基础服务层和微内核层。
架构上的主要区别
一、谷歌的安卓系统是基于Linux开发,华为的“鸿蒙”系统也是基于Linux开发,但底层对Linux进行大量优化。
二、安卓系统程序员写APP使用的是JAVA高级语言,打包成APK到安卓系统。方舟编译器,则是让APK打包之前,统一把指令换成安卓系统能读懂的机器语言,省去了"翻译"这个过程。
三、安卓的主要开发语言是基于java,而在鸿蒙系统上可以使用java和js。
应用层面
安卓系统
安卓系统适用于手机,虽然当前有好多设备都是基于安卓开发的,例如车载屏幕等。但实际上都是针对于安卓手机应用的简单扩展。
鸿蒙系统
华为带来全场景 1+8+N 智慧生活,鸿蒙系统 2.0 带来统一控制中心。将会涵盖五大场景,包括智慧出行、智能家居、运动健康、智慧办公以及影音娱乐。这里提的“1” 指的是手机,手机是未来智慧生活的入口,因此显得额外重要。“8“指的是平板、PC、穿戴、HD、AI音箱、耳机、VR、车机。“N”指的是泛IOT设备。
在应用上,鸿蒙系统显然更强大,并且兼容所有安卓系统的应用。
在安全等级上,鸿蒙采用更高级别的隐私保护功能,开启了多设备的协同认证,全面保护用户的隐私安全。
缺陷与不足
在适配性上,因为鸿蒙系统目前来看只能在华为的手机上使用,但是安卓系统可以在目前所有的安卓手机上使用。
在生态系统上,安卓系统经过多年发展,软件生态非常完善,整体生态系统也变得逐渐的成熟起来,在功能性与实用性上已做得相当出色;而鸿蒙还处在新生阶段,有发展的潜力。
鸿蒙os所用的语言开发APP软件,这个只有是内部人员才能够知道的,应该是一些计算机方面的c语言之类的或者是更高级的语言。
就好比苹果把AirPods、HomePod、Watch os、TV os、CarPlay、HomeKit、MacOS都改成iOS ,分布式iOS,多端部署。
这样,一提开源、基于aosp,某些人就会给把轻鸿蒙拎出来反驳:自研,开源啦,没有安卓代码。
一提手机上的功能,又把富鸿蒙(基于aosp)拎出来吹。
不要被文字 游戏 迷惑,我们只讲真正的部分,下面的鸿蒙指代手机上的鸿蒙。那个混淆视听的轻踢到一边。
可以肯定的说,手机版鸿蒙就是基于安卓aosp,俗称TP,至少目前是这样。(还有其他混淆视线的op鸿蒙,liteOS等〈说没安卓代码的就是这个〉,注意分清)
那些骂人的极端粉丝请注意, 我们反对的不是自研,而是反对吹牛忽悠 。如果当初有人也以自研,民族,国家为挡箭牌,那我们就不可能揭露红心浏览器和木兰语言的吹牛和忽悠。
还有一些粉丝狡辩:如果是安卓谷歌早就起诉华为了。
这些人是没搞清楚或故意混淆AOSP(Android Open-Source Project,Android 开放源代码项目)和谷歌android的区别。AOSP随便用,但是只有经过谷歌认证的安卓才能安装GMS和谷歌play。搞明白了没?谷歌控制的是gms和谷歌play,谷歌无权控制安卓。
一些人造谣谷歌告阿里, 实际上谷歌从来没有起诉过阿里 。就连套皮的红心浏览器谷歌也没有告过。
套皮安卓是帮谷歌壮大安卓生态,压制ios等对手。当年谷歌diss阿里就是因为阿里重写了虚拟机(可见,阿里的自主化做的比某厂多),想分裂生态另起炉灶,如果阿里套皮,谷歌才懒得理。
某个群体否认手机HM os是PPT,说HM开源了,哪里还是PPT。
1,直到目前(2021.06.29)开源的那个是op 鸿蒙,功能简陋粗糙,功能机和车机水平,炒作营销意义大于实际。和手机版完全是两个东西。
2,ppt上微内核,五个笑脸源码呢?吊打A公司和G公司系统的ppt系统依旧只存在于ppt。手机上的依旧是安卓是新版emui,国外发布的新系统依旧沿用emui名字—emui12。拿emui改名出来顶包是不是ppt了?微内核呢?五个笑脸呢?
3,将来鸿蒙出来了是不是打脸之前质疑的网友的脸?
三十年前我说我是万元户,朋友都嘲笑我,现在我终于可以打他们脸了。
你这和拿2008年的数据论证1958年超英赶美有啥区别?
亩c万j现在实现了,是不是可以打了当年批判它的人的脸?现在的人是不是要向当年吹牛放卫星的人谢罪?
根据统计,aosp源码共125G,提交量统计, 谷歌(不含子公司)提交量占56%+,苹果4.3%,华为提交量占0.04% ,按行数统计谷歌更是高达94%以上,linux内核700多M,仅占0.37%,可见华为王成录博士的谈话有意贬低了谷歌的贡献,吃相有点难看。
1.fireOS,lineaOS也不显示。
2.“ power by android”不是想加就能加的,必须通过安卓品牌团队批准才可以 。
网友是嘲讽它自主科研吗?是否认华为真的在做一些事情吗?
不是。
网友们反感的是它明明连一都没做到就说自己做出了一百,而某些人能吹出它做了1000,还不让网友质疑。
花粉:“我在电脑上安装了安卓模拟器打王者荣耀证实了一件事情,windows是套皮的安卓,因为他的系统里有安卓系统源代码,与此同时我也证明了另外一件事情鸿蒙系统它也能打王者荣耀,巧的是它系统里面有安卓系统源代码,所以鸿蒙也是套皮的安卓,安卓牛逼!!!这个笑话好笑不?”
这个花粉确实蛮 搞笑 的,window有自己的exe,解压后也不是apk套皮,更不会像鸿蒙app运行起来后后台看到的是一个安卓进程,即windows有自己的运行时。最后 windows卸载了安卓模拟器没影响。手机鸿蒙去掉了安卓还能开机吗?
还有拿WSL来举例说鸿蒙不是套皮安卓的:
‘不能因为windows推出了一个windows subsystem linux,就说windows是linux套皮。’
和上面的一样,windows有WSL但是人家的exe并不是跑在linux的运行时(RT)上,而是运行在自己RT上!有自己的win32生态,WSL更多的是给开发人员提供linux开发测试环境,去掉WSL对自身使用和生态毫无影响。鸿蒙那个是直接完全依赖ART,去掉aosp鸿蒙直接……
没人说含安卓代码就是套皮,但是鸿蒙连自己的运行时都没有,鸿蒙app运行在ART之上,这还不是套皮是什么?
某人说鸿蒙随时可用2年了,生态应用迁移只需1-2天,这么简单,但到现在连“花粉俱乐部”都没有鸿蒙版,只有安卓版,花粉来吹鸿蒙和骂我都只能通过安卓app……
还能说什么?
这个理由听起来好像有道理,但是再仔细一分析妥妥的是自己骗自己:
1,做给谷歌做给外国人看,吓唬它们的,全程却是中文而不是英语,手机发布会都用英语,反而“做给谷歌/美国”看吹鸿蒙的用中文。
2,谷歌看“吹牛”来判断一个系统怎么样?it界的真理是:talk is cheap,show me the code。等鸿蒙是开源,谷歌的工程师一看源码就知道行不行,根本不在乎对方说什么。
可见,鸿蒙的言论主要福报的就是国人。
更讽刺的是营销成自研系统,突破封锁,你以为鸿蒙是对标android、ios?是去抢海外市场么?
要回答这个问题,先要知道为啥华为海外市场暴跌——用不了GMS,相当于国内用不了微信支付宝美团等生态。用不了GMS自然不能贴android标,这本是无奈之举,水军丧事喜办反手炒作成主动不贴标,自主研发的形象又立起来了。
那鸿蒙解决华为用不了GMS的问题了么,解决芯片问题?显然没有。鸿蒙对标的是coloros、miui、flyme,抢的是国内市场。
几个中国厂商鹬蚌相争,关外国人鸟事?
本来套皮就没什么呀,我们本来就没有反对套皮,我们反对的是套皮了却死不承认吹自研,不要偷换概念。
李楠挺鸿蒙的回答就是偷换概念的典型,说套皮的各种合理性,可是我们反对的又不是套皮,所以李楠真是答非所问。当然李楠也可能是高级黑,更加坐实套皮的事实。
1,很佩服营销能力。但是 “开放原子开源基金会”只是一个归国家行政管理的一个「 社会 团体」,通俗一点就是一个“民间团队”,和“国家队”是两码事,把项目开源给民间团队怎么就成了国家战略?
2,最重要的一点是,菊花开源的那个鸿蒙根本不是菊花手机上用的那个鸿蒙!再一次佩服营销,强!
红芯浏览器有VPN、防火墙等很多谷歌浏览器内核的浏览器没有的功能,所以红心浏览器就不是套皮?
大家都五菱宏光,菊花往里面安了一个浴缸,然后菊粉就觉得其他人没有,所以是菊花自研车?
如果是跑的安卓虚拟机,运行安卓程序时还应该显示“专为旧版安卓打造”,因为这里面根本没有HM什么事,那为什么要修改成“专为HM打造”呢?解释解释。
三十年前我说我是万元户,朋友都嘲笑我,现在我终于可以打他们脸了
你这和拿2008年的数据论证1958年超英赶美有啥区别
6.2发布了鸿蒙,一些粉丝得意洋洋的说来“打”我的脸。
其实6.2发布的那个鸿蒙os不就是改名的新版emui么?玩 游戏 在安卓区还是鸿蒙区?那几个所谓的鸿蒙app不是js,就是apk套皮在后台一看就是个安卓进程。没有鸿蒙,用emui的时候,你们不能联这个那个?
开发前可以了解下鸿蒙: [鸿蒙开发 序]华为鸿蒙操作系统(HarmonyOS)简介及开发环境搭建
开发前的准备:「鸿蒙开发 1」华为鸿蒙应用集成开发环境DevEco Studio安装和设置
了解鸿蒙应用开发的基本开发流程:「鸿蒙开发 2」第一个华为鸿蒙(HarmonyOS)应用程序(App)
本章目标:
1 了解华为鸿蒙应用开发的可视化(低代码)方式
2 通过构建一个简单的具有页面跳转功能的应用
低代码开发方式,即通过可视化界面开发方式快速构建布局、编辑UI界面,可有效降低用户的上手成本并提升用户构建UI界面的效率。
1 打开DevEco Studio,创建一个新工程,选择支持Phone / Tablet / Wearable(手机 / 平板 / s可穿戴)的模板,我们在此直接选择Empty Ability
Project name工程名称填SuperVisual
Development mode开发方式选择Super Visual
其它的可以使用默认设置,点击完成,进入编辑界面
1 在Project(项目)窗口,删除工程运行默认的入口文件夹:“entry src main js default pages index”文件夹
2 在Project窗口,选择工程中的“entry src main js default pages”,单击鼠标右键,选择“New JS Visual”
JS visual name填first,点击完成,进入编辑界面
创建完成后,可以看到“entry src main supervisual default pages page page.visual”的文件目录结构
3 第一个页面内有一个容器、文本和一个按钮,通过Div、Text和Button组件来实现
(1)分别选中first.visual画面中的Text、Div组件,单击鼠标右键,选择Delete删除
(2)选中UI Control中的Div组件,将其拖至画布
点击右侧属性样式栏中的通用样式图标(General),设置Div组件的高度Height为100%,使其占满屏幕
点击右侧属性样式栏中的样式图标(Flex),设置Div组件的FlexDirection样式为column,使Div的主轴垂直;设置Div组件的JustifyContent样式为center,使得其子组件在主轴上居中显示;设置Div组件的AlignItems样式为center,使得其子组件在交叉轴上居中显示
(3)选中UI Control中的Text组件,将其拖至Div组件的中央区域
点击右侧属性样式栏中的属性图标(Properties),设置Text组件的Content属性为 “ Hello World ”
点击右侧属性样式栏中的通用样式图标(General),设置Text组件的宽(width)为100%,高(height)为100px
点击右侧属性样式栏中的样式图标(Feature),设置组件的FontSize样式为60px,使得其文字放大;设置组件的TextAlign样式为center,使得组件文字居中显示
(4)选中UI Control中的Button组件,将其拖至Text组件下面
点击右侧属性样式栏中的属性图标(Properties),设置Button组件的Value属性为 “ Next ”,
点击右侧属性样式栏中的通用样式图标(General),设置按的宽(width)为40%,高(height)为60px
点击右侧属性样式栏中的样式图标(Feature),设置组件的FontSize样式为40px
至此,第一个页面创建完成
我们可以在预览窗口中看效果,点击右侧边栏的Preview打开预览窗口
1 在Project窗口,选择工程中的“entry src main js default pages”,单击鼠标右键,选择“New JS Visual”
Visual配置界面,JS visual name填second,回车(Enter键)或者点击完成,进入编辑界面
2 第二个页面中有一个容器和文本,通过Div、Text组件实现,现在编辑器已经为我们创建好了,我们就来修改下它们的属性(你也可以删除原有的自己创建,具体步骤参考本章第二节“二 创建第一个页面”)。
选中Text组件,点击右侧属性样式栏中的属性图标(Properties),设置Text组件的Content属性为 “ Hi,I'm always here. ”
点击右侧属性样式栏中的通用图标(General),设置组件的宽(width)为100%,高为60px
点击右侧属性样式栏中的样式图标(Feature),设置组件的FontSize样式为36px,TextAlign样式为center
这样我们的第二个页面创建成功了
1 在Project窗口,打开工程中的“entry src main js default pages first first.js”, 导入router模块,页面路由router根据页面的uri来找到目标页面,从而实现跳转。示例代码如下:
2 打开或者切换到first.visual页面,选中画布上的Button组件,点击右侧属性样式栏中的事件图标(Events),鼠标点击Click事件的输入框,选择launch事件
3 在预览窗口中查看项目效果,点击Next按钮后发现我们的页面成功跳转了。
到此,本章的目标就完成了。