开始

学习一个东西,特别是类似的东西,大家往往都会触类旁通,华为的DevEco
Studio
这波骚操作,基于IDEA的社区版开发的编辑器,无不让Android开发者倍感亲切,抛开一些负面的评论,站在巨人肩膀上面确实可以看的更高走得更远,这是一种发展战略,咱们也不懂,不做深究。

好了,回归正题,学习一项新的技能,我们可以触类旁通,就像画画一样,从一开始从头开始画起,到后来从画骨架开始,这就是所谓的画皮先画骨,都会摸索出自己的一套套路来,就从笔者的下面的几个套路开始。

开发工具SDK下载

工欲善其事必先利其器,先从开发工具入手。

先从开发工具入手

找到下载地址

HUAWEI DevEco Studio产品页
安装就不用说了吧,毕竟一直下一步就对了,最后重启
首页

先创建一个手表应用

点击 Create HarMonyOS Project
创建java
这里如果之前就安装了SDK的话,直接下一步即可,和AS几乎一摸一样。
这个就不用说了

安装SDK

Ctrl+Shfit+S 一个是SDK,一个是Jar点完OK,休息一下等下载完成即可。
SDK
Jar

安装模拟器

这一步就要华为开发者和实名认证
创建模拟器
双击
跑起来
看样子是个远程调试窗口~
HVD

Demo

调试

华为账号实名认证

华为账号快速认证,推荐使用银行卡,秒过。不用想怎么绕开了,最终上架的时候还是要搞的。

开发语言解析

结构

理解功能
MainAbilityMainActivity容器
MainAbilityLayoutInflater填充器
MyApplicationApplication贯穿生命周期管理类

项目结构
语言

当然使用Java啦,我们看看代码。

public class MainAbility extends Ability {
    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        //设置一个路由,对应的找到MainAbilitySlice 看到是一个填充布局类
        super.setMainRoute(MainAbilitySlice.class.getName());
    }
}
public class MainAbilitySlice extends AbilitySlice {
//这就个AndroidXML 代码填充几乎一致
    private DirectionalLayout myLayout = new DirectionalLayout(this);

    @Override
    public void onStart(Intent intent) {
        super.onStart(intent);
        LayoutConfig config = new LayoutConfig(LayoutConfig.MATCH_PARENT, LayoutConfig.MATCH_PARENT);
        myLayout.setLayoutConfig(config);
        ShapeElement element = new ShapeElement();
        element.setRgbColor(new RgbColor(128, 128, 128));
        myLayout.setBackground(element);

        Text text = new Text(this);
        text.setLayoutConfig(config);
        text.setText("Hello World");
        text.setTextColor(new Color(0xFF000000));
        text.setTextSize(50);
        text.setTextAlignment(TextAlignment.CENTER);
        myLayout.addComponent(text);
        super.setUIContent(myLayout);
    }

    @Override
    public void onActive() {
        super.onActive();
    }

    @Override
    public void onForeground(Intent intent) {
        super.onForeground(intent);
    }
}

另外Ctrl+O 我们可以看到OnStop等生命周期方法,点击事件以及我们熟悉的findComponetById方法.
继承方法

更多的API

当然上面只是做了一关于布局和界面的API,更多的API请查看官方开发文档

打包上架

开放平台目前貌似没有发布的按钮
发布鸿蒙应用

结束

个人觉得鸿蒙开发还是有一定野心的,切入点也很明确,就是利用Android的巨大成功,和庞大的生态上位。但目前社区还是较少,也没有像Manifest那样完善的配置文件,倒是和小程序很像,API也需要第一批吃螃蟹的人来尝试,总之任重而道远。PS:不要总是说人家抄袭,看看官网API就知道,还是有很多不一样的地方。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐