当前位置:   article > 正文

安卓开发文档_鸿蒙2.0,HarmonyOS开发体验!

20安卓开发转鸿蒙开发到底有多简单?

“没有人能够熄灭漫天星光”。在9月10日的华为2020开发者大会上,余承东掷地有声地说道。

从去年开放的鸿蒙1.0,到今年的2.0。仅仅一年时间,华为就把基础设施全部搭建好。从之前的感知不强,到现在的触手可得,让果核这个半个程序员,觉得无比的震撼,更多的还是对华为的尊敬与佩服。

目前官方开发工具已经能够下载,大家跟着果核去瞧瞧,这个鸿蒙到底是什么吧。

打开官网,https://www.harmonyos.com/ ,首页看起来小清新。

c8dfb059db326ed57bd116fdf929cd21.png

这次华为不完虚的了,直接提供了开发工具和运行环境,允许我们直接上手,开发工具从界面上来看,和IDEA如出一辙,应该是和Android Studio一样,都是基于IDEA软件定制。

IDEA相信大家都很熟悉了,功能非常强大,果核开发程序一直用的也是IDEA系列的软件。

51380b07ad3be66542f4dd63043e2ecc.png

从官网文档来看,也证明了软件是基于IntelliJ IDEA Community开源版本制作。很好,总算国内有一个看得过去的IDE了。

e41161003a4dec7cbfea1ce6d077032e.png

打开软件,华为专属的启动图

d25cb5a1343a64eccc171e95cef926e7.png

目前可以创建的项目是电视和手表,手机应用要等到12月以后就能上线。

很有意思的是,软件开发支持使用Java语言以及JS!!这意味着,你如果会前端的,那么开发起来就更容易了。

21ca7aaa6df32c6d346ed436aade4228.png

先创建一个基于Java开发的手表程序。环境下载非常快,依赖库应该在国内,这一点好评!

下载配置需要的环境,例如gradle,几分钟就搞定了。就这么一个简单的配置,是多少Android初学者的噩梦。

eaab759c5faaa9dd262763c2ef60ebcd.png

从项目来看,结构基本上和Android项目一致,同样是使用gradle来管理项目。

860832d16522b3896ae2e0a123f1e206.png

同Android一样,需要模拟器才能测试。登录华为账号,成功启动手表模拟器。

ccaf4b4ebea89174e2ead7e886acea22.png

成功运行Hello Word程序

a9d0e77cfc1ed8195e1662ba1abc8878.png

至此,开发体验到这儿结束了,很简单的一个应用示例,官方的帮助文档也写得非常清楚。

微信广告 cf089cc59b543c78d3f7b6ba7e212e84.gif

相信大家都有注意到一点,鸿蒙开发和Android开发太像了,那么是否是直接抄袭的Android,直接改名套壳呢?毕竟我们历史上这么做的人太多了,那么华为能在这么短的时间里面搞定这么多的东西,是不是直接拿Android的东西来用?

Android中,把界面叫做活动:Activity。鸿蒙中,把界面叫做Ability。而进入AbilityShellActivity,可以看到,鸿蒙的Ability,引入了Android的包,这里的代码也正是引起大家争议的地方。

7647aa2ab3e87ac32411e31407a5a51e.png

但是,随着深入。HarmonyApplication中的最后一段代码,是和Android进程通信的。鸿蒙作为分布式架构拥有分布式内核,也就是说可能鸿蒙与Linux会同时存在,如果鸿蒙的内核确实是独立于安卓的Linux内核,那么通过上面分析,鸿蒙app启动流程可能是这样:鸿蒙App在鸿蒙的内核中启动运行->鸿蒙内核主动向Linux内核发送请求运行apk包中的代码在安卓虚拟机中创建一个用于与该鸿蒙进程通信的Shell进程,并设置好对应ability的上下文环境->安卓进程通过这个Shell进程与鸿蒙进程通信。

97b3373856e404794d144572a3b9a91c.png

再继续,将鸿蒙的安装包当做压缩软件打开,可以看到,里面居然有apk文件,这可是安卓的安装包啊!!并且和安卓的结构一致。

4f39d1aeecb70ab0747f9cab178903da.png

反编译这个apk中的dex,jar包查看java源代码,发现里面也确实调用到了安卓的api,不过只用到了android.os.bundle,这个类是用来在activity间通讯的。

abb29b5f1dd36a127590c90badf4a12f.png

唔,看到这儿,作为一个开发人员,大概明白是什么意思了。鸿蒙是想兼容Android啊,这么做对于迁移项目真是太方便了。

微信广告 cf089cc59b543c78d3f7b6ba7e212e84.gif

当然了,上面的内容也只是猜测,是否确定要等到12月开源手机端才能进一步分析。从技术上来说,果核认为并没有什么不妥的,不过很多人抓着Android的字眼,说鸿蒙抄袭之类的。

不管怎么样,东西已经做出来了,无论大家喜不喜欢,都已经出来了,最后华为要做的就是,把生态搞好,而我们普通消费者关心的是,系统是否流畅,好用安全。其他的交给喷子们吧。

cf089cc59b543c78d3f7b6ba7e212e84.gif

最后附上相关地址

鸿蒙开发工具:

https://developer.harmonyos.com/cn/develop

鸿蒙帮助文档:

https://developer.harmonyos.com/cn/documentation

视频教程:

https://www.bilibili.com/video/BV1mv411179B

果核日记

有人知道丛集性头痛怎么治疗的吗,果核已经痛了5年了。每到秋天就时不时的发作,每次痛个一小时,想死的感觉。。各大医院都检查不出问题。

3040f7dbeb93a9a1be10bcbedcc03282.gif 7387375404a2139512bcfa99a8e8c5d3.png   由于微信公众号近期改变了推送规则,如果你想如常看到我们的文章,可以时常点击文末右下角的「在看」;或者按下图将 果核剥壳 星标。
这样操作后,我们每次新的推送才能第一时间出现在你的订阅列表中~

6f9568eb2acf96e24c402a7178eed96d.png

05dab852267f2b8a4a658ad9a5a59f77.gif

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/262141
推荐阅读
相关标签
  

闽ICP备14008679号