就业机遇:为什么说Android转鸿蒙开发容易?

Carson带你学习Android

共 7422字,需浏览 15分钟

 ·

2024-06-03 08:05

因为无论从鸿蒙开发IDE、开发语言还是开发风格都跟Android开发十分类似。

1. 开发IDE

鸿蒙开发IDE的软件称为:DevEco-Studio,十分类似Android Studio ,同样基于Intellj IDEA开发,界面都长得很类似,不是说很像,而是一模一样。对于项目文件管理栏,同样可切换Project、Packages应用内视图。

对于底部导航栏,文件管理,日志输出,终端,Profiler都几乎保持一致。

对于SDK Manager,类似于Android Studio,也内建了SDK管理器,可以下载管理不同版本的SDK。同样的,你也可以通过模拟管理器进行模拟器debug开发。对于开发IDE,Android人员可以无缝切换进行开发,因为DevEco-Studio跟Android Studio真的长得太像了。

2. 开发语言

鸿蒙开发使用的语言是基于TS改进增强而来,即熟悉JS语言即可快速上手。安装好EcoDev-Studio后,在IDE中选择安装Node.js即可。在会Java、kotlin的前提下可以十分快速上手js并进行鸿蒙开发。

3. 开发工具

类似Android开发中的adb工具,鸿蒙上的开发工具称为:hdc(HarmonyOS Device Connector),是HarmonyOS为开发人员提供的用于调试的命令行工具,通过该工具可以在windows/linux/mac系统上与真实设备或者模拟器进行交互。

类似命令:

  • hdc list targets
  • hdc file send local remote
  • hdc install package File

命令的名称 & 作用也类似于Android中adb的对应命令,详细命令见:

https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/ide-command-line-hdc-0000001237908229-V3

4. 配置文件

Android最核心的配置文件是AndroidManifest.xml,其内容是:定义版本号、页面路径、注册了广播和服务,同时还申明了App使用的权限。

同样的,鸿蒙中也对应的配置文件,但与Android的区别是:鸿蒙分为多个文件:build-profile.json5和app.json5

对于build-profile.json5,作用是配置Sdk Version和代码模块区分

{
  "app": {
    "signingConfigs": [],
    "compileSdkVersion": 9,
    "compatibleSdkVersion": 9,
    "products": [
      {
        "name""default",
        "signingConfig""default",
      }
    ],
    "buildModeSet": [
      {
        "name""debug",
      },
      {
        "name""release"
      }
    ]
  },
  "modules": [
    {
      "name""entry",
      "srcPath""./entry",
      "targets": [
        {
          "name""default",
          "applyToProducts": [
            "default"
          ]
        }
      ]
    }
  ]
}

对于app.json5,作用是:模块配置、模块权限和页面名。

{
  "module": {
    "name""entry",
    "type""entry",
    "description""$string:module_desc",
    "mainElement""EntryAbility",
    "deviceTypes": [
      "phone",
      "tablet"
    ],
    "deliveryWithInstall"true,
    "installationFree"false,
    "pages""$profile:main_pages",
    "abilities": [
      {
        "name""EntryAbility",
        "srcEntry""./ets/entryability/EntryAbility.ts",
        "description""$string:EntryAbility_desc",
        "icon""$media:icon",
        "label""$string:EntryAbility_label",
        "startWindowIcon""$media:startIcon",
        "startWindowBackground""$color:start_window_background",
        "exported"true,
        "skills": [
          {
            "entities": [
              "entity.system.home"
            ],
            "actions": [
              "action.system.home"
            ]
          }
        ]
      }
    ],
    "requestPermissions":[
      {
        "name" : "ohos.permission.APPROXIMATELY_LOCATION",
        "reason""$string:reason",
        "usedScene": {
          "abilities": [
            "FormAbility"
          ],
          "when":"inuse"
        }
      }
    ]
  }
}

5. 开发风格

鸿蒙的UI开发模式是一种响应式开发,类似于Android Compose UI。组件命名从本质概念上也是保持一致的。

build() {
  Column() {
    Text(this.accessText)
      .fontSize(14)
      .fontWeight(FontWeight.Bold)

    if (!this.hasAccess) {
      Button('测试按钮').margin({top: 12})
        .onClick(() => {
          this.reqPermissionsFromUser(this.permissions);
        })
    } else {
      Text('测试文案' )
        .fontSize(14)
        .margin({top: 13})
        .width('100%')
    }
  }
  .height('100%')
  .width('100%')
  .padding(14)
}

总结

从本文可知:从Android开发转向学习鸿蒙的成本真的不高。这或许对于Androdi开发者来说是一个很好的就业方向及机遇。


「点击关注,Carson每天带你学习一个Android知识点。」

最后福利:学习资料赠送

  • 福利:本人亲自整理的「Android学习资料」
  • 数量:10名
  • 参与方式:「点击右下角”在看“并回复截图到公众号,随机抽取」

    点击就能升职、加薪水!



浏览 74
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报