0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

HarmonyOS项目和Android项目对比

旺材芯片 来源:51CTO 作者:51CTO 2020-12-10 10:20 次阅读

对于开发者来说两个最关键的点值得关注:一个是 Beta 版的开发工具,一个是开源网站。

开源网站

在开发者大会上宣布将 HarmonyOS源代码捐赠给中国开放原子开源基金会,并在大会上公布了鸿蒙系统的开源路线。 OpenHarmony 官方源码地址:

https://openharmony.gitee.com/openharmony

开发工具

鸿蒙使用基于 Intellij IDEA 深度定制研发的 DevEco Studio 作为其开发工具。 DevEco Studio 下载地址:

https://developer.harmonyos.com/cn/develop/deveco-studio 那么,在应用开发过程中,HarmonyOS(鸿蒙)和 Android(安卓)开发环境有什么不同呐?

HarmonyOS 项目和 Android 项目对比

资源目录的变更

①资源目录名称有更改 安卓 res 目录,这里用 resources 目录,它包括 base 和 rawfile 两部分,其中 base 是核心的资源目录,常用的都放在这里面,便于查找和使用。rawfile 会原封不动打包到生成的应用里面。 安卓是 res/values 目录,这里是 resources/element 目录。安卓 raw 目录,这里用 rawfile 目录。 ②资源目录分门别类,统一管理 Android 目录结构就比较松散,没有统一的文件夹管理,res/values 目录里面可以创建各种资源的 xml 文件,只能去官网查看有哪些可以创建。 这里有 base 目录统一管理。 ③部分资目录删除,新增一些资源目录类型 比如 float.json 文件,plural.json 文件,profile 文件夹等。 ④编写方式有改变,xml 变更为 json 安卓的 values 里面是 xml 写的,这里是 element 目录里面的,都是 json 格式的。 最后来一张同类型资源对比图:

f84f976c-35af-11eb-a64d-12bb97331649.png

f87a18ca-35af-11eb-a64d-12bb97331649.png

完整的资源目录的具体变更对比如下图所示:

f8e83ab2-35af-11eb-a64d-12bb97331649.png

配置文件的变更

清单文件 AndroidManifest 变成了 config.json 文件。

Java 代码的变更

完整的 Java 目录的变更对比如下图所示:

f90d4e9c-35af-11eb-a64d-12bb97331649.png

HarmonyOS 项目和微信小程序项目对比

完整的 JS 目录和微信小程序对比如下图所示:

f9fa2d3e-35af-11eb-a64d-12bb97331649.png

HarmonyOS 优点

多终端开发调试便捷

鸿蒙目前支持可以开发 TV,wearable, LiteWearable 几种设备类型,未来还会扩展到其他设备。并且一次代码就可以在不同设备快速部署和调试,操作非常简易。

对开发者友好,开发难度和学习成本低

①IDE 开发工具方面

DevEco Studio 是基于 Intellij IDEA 工具定制化深度研发的一个工具,所以对于那些熟悉 IDEA,或 Android Studio 或 WebStorm 这些 IDE 开发工具的朋友们来说应该是很熟悉的,不熟悉的朋友们也可以很快就上手。 另外正是由于是定制化的,所以去掉了 IDEA 里面杂七杂八的东西,只保留与鸿蒙项目有关的 SDK 和工具与设置,开发工具简洁纯净清爽,非常好用。

②语言平台

开发 TV 和 Wearable 项目可以选择 Java 或 JS 语言作为开发语言,开发 Lite Wearable 项目仅支持 JS 语言,都是大众喜爱和用的多的开发语言,大家的接受程度很高。 另外开发 Lite Wearable 项目需要用到 **.hml** 后缀的文件,这是鸿蒙团队自研的一个标签性语言,类似于 html,学习起来一点都不费力。

③框架方面

如果使用 Java 开发项目,你通过 Ctrl+鼠标左键点进去查看源码,你会发现 SDK 里面有很多 API 都是跟 Android 类似的,似曾相识的感觉。 不过也有一些是基于鸿蒙内核和底层一些特性新增的。如果你使用 JS 开发,你会发现和微信小程序写起来很类似。 所以框架层大家一看基本都可以看明白是怎么操作了,很好理解,也是大家都可以接受的,学习起来也不是难题。

④权限处理

另外安卓权限的处理是很麻烦的,鸿蒙里面在 config.json 里面可以配置全局的权限,被别人使用的权限,单独模块的权限,以及自定义属于自己的权限。 而且 Java 代码里面也可以用代码动态申请权限,鸿蒙的权限处理的颗粒度更细,对开发者来说,处理起来也是非常方便的。

⑤测试方便,无需下载模拟

鸿蒙使用的是云测试,登陆开发者账号即可连接云设备,无需下载模拟器,还是很便捷的,即使换一台电脑,也不用担心因为没有下载模拟器而耽误测试进度,只要有网络,登陆账号即可进行测试。

责任编辑:lq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    19

    文章

    2903

    浏览量

    102977
  • 模拟器
    +关注

    关注

    2

    文章

    813

    浏览量

    42684
  • 鸿蒙系统
    +关注

    关注

    183

    文章

    2600

    浏览量

    65249

原文标题:鸿蒙和安卓,到底有什么区别?

文章出处:【微信号:wc_ysj,微信公众号:旺材芯片】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    怎么用eclipse创建web项目

    使用Eclipse创建Web项目是一种常见的方式,下面将分步骤详解如何使用Eclipse创建Web项目。在开始之前,请确保已经安装了Java开发工具包(JDK)和Eclipse集成开发环境(IDE
    的头像 发表于 12-06 13:40 832次阅读

    关注近期智慧灯杆项目

    绵阳科技城新区直管区科创片区城市更新改建项目-智慧路灯及公交站台采购项目项目预算:4090.13万元,建设智慧路灯及成品公交站台实现联网联控。
    的头像 发表于 12-06 11:42 340次阅读
    关注近期智慧灯杆<b class='flag-5'>项目</b>

    eclipse怎么运行java项目

    在Eclipse中运行Java项目是非常简单的。下面了解一下如何在Eclipse中运行Java项目。 首先,确保您已经在Eclipse中创建了Java项目。如果您尚未创建,请按照以下步骤进行操作
    的头像 发表于 12-06 11:25 982次阅读

    鸿蒙原生应用开发-DevEco Studio中HarmonyOS与OpenHarmony项目的切换

    一、找到该目录 二、修改操作系统类型 三、分别进行开发,一些常规的应用功能实现后,相互切换后都可以正常运行的。前期OpenHarmony项目如果连接开发板比较困难的化,开发完成后,切换成为HarmonyOS后就可以比较详细地看看效果了。
    发表于 11-13 09:47

    VisionFive 2成功集成Android开源项目(AOSP)!

    非常高兴地向各位宣布,赛昉VisionFive 2上已成功集成了Android开源项目(AOSP),为用户带来了更多的软件解决方案以及与Android软件生态系统的无缝集成。这一里程碑源于与开源社区
    发表于 10-16 13:11

    谷歌发布Android14 将源代码推送到AOSP(Android开源项目

    谷歌最近发布了Android 14,用于支持的设备,如Google Pixel手机,并将源代码推送到AOSP(Android开源项目)。 对 Android 操作系统第 14 版的大部
    的头像 发表于 10-12 15:56 647次阅读

    HarmonyOS/OpenHarmony应用开发-DevEco Studio新建项目的整体说明

    ,是开发者需要优先了解熟悉*附件:HarmonyOSOpenHarmony应用开发-DevEco Studio新建项目的整体说明.docx
    发表于 09-15 16:51

    锂电负极材料募投项目投资资金及经济指标对比

    GGII梳理了2020-2023年H1中国负极材料募投项目的投资金额与经济指标情况,并从中挑选披露数据比较全面的部分代表性项目,以供参考。
    的头像 发表于 08-27 11:53 687次阅读
    锂电负极材料募投<b class='flag-5'>项目</b>投资资金及经济指标<b class='flag-5'>对比</b>

    GGII:7月储能中标项目分析

    2023年7月国内共有19个储能项目EPC/系统公布中标结果,包括7个储能EPC项目,12个储能系统采购项目
    的头像 发表于 08-12 14:43 838次阅读
    GGII:7月储能中标<b class='flag-5'>项目</b>分析

    景芯SoC项目之DFT debug

    景芯SoC项目是个付费培训项目项目数据在服务器上。景芯SoC在tessent完成edt occ插入并且仿真OK后,去综合,然后做scan chain insertion就一堆error S1,首先是28个S1 violatio
    的头像 发表于 08-09 10:11 1487次阅读
    景芯SoC<b class='flag-5'>项目</b>之DFT debug

    02.02 尚硅谷 React全栈项目 开发准备 项目描述 #硬声创作季

    项目开发
    充八万
    发布于 :2023年07月18日 09:47:57

    08.08 尚硅谷 React全栈项目 项目源码基本目录设计 #硬声创作季

    项目开发
    充八万
    发布于 :2023年07月18日 03:08:56

    项目项目集之间的区别与联系

    Project(项目)和Program(项目集)是与组织和管理相关的术语,用于描述一系列相关活动的集合。它们在定义和范围上有一些区别和联系。以下是它们的定义和解释,包括维基百科的定义
    的头像 发表于 06-25 10:17 1205次阅读

    边缘计算开源项目概述

    边缘计算开源项目是当前业界为解决垂直领域的计算和网络资源应用问题提出的一套解决方案,根据不同的应用场景有多种类型的平台。笔者将github上关注度较高的边缘计算开源平台进行了对比研 究,简述了每个开源项目设计目标,基本功能和应
    发表于 05-18 17:20 0次下载
    边缘计算开源<b class='flag-5'>项目</b>概述

    HarmonyOS Codelabs最新参考

    /HarmonyOS应用开发。 Stage模型卡片(ArkTS) 文档: https://developer.huawei.com/consumer/cn/codelabsPortal/carddetails/tutorials_StepsCardArkTS 项目
    的头像 发表于 04-25 15:40 583次阅读
    <b class='flag-5'>HarmonyOS</b> Codelabs最新参考