当前位置: 首页 > news >正文

纯血鸿蒙「扩圈」100天,酝酿已久的突围

坦白讲,去年参加华为开发者大会看到HarmonyOS NEXT(仅运行鸿蒙原生应用,所以也称作「纯血鸿蒙」)的时候,小雷也没料想到鸿蒙原生应用生态的发展速度会如此之快。

9月25日,华为正式对外宣布启动HarmonyOS NEXT计划,鸿蒙原生应用全面启动,接着便是这风起云涌的「鸿蒙100天」:

美团、支付宝、中国国航、中国银联、哔哩哔哩、米哈游等各领域头部伙伴官宣启动鸿蒙原生应用开发;小红书、爱奇艺走得更快,相继宣布完成了鸿蒙原生应用Beta版开发;抖音、百度虽尚未官宣,但已在招聘市场发布鸿蒙开发者岗位。

鸿蒙开发者逆势膨胀,成为人才市场香饽饽,待遇远高行业均值,开发者们涌入华为开发者官网,创造了一天之内新增万名鸿蒙开发者注册的火爆现象。多所985/211高校开设鸿蒙课程,其中南京大学更是直接让鸿蒙课程替代了原来的安卓课程。

还有媒体消息,华为将在1月18日举办重要的鸿蒙活动,届时可能会公布关于更多伙伴、开发者和用户体验的消息。

至此完全可以说,鸿蒙生态链条活力已全面激发,纯血鸿蒙「扩圈」100天,新世界曙光已现。

操作系统不难,难的是生态

操作系统的重要性不言而喻,但就如美团联合创始人王慧文在2020年松湖对话中所言,「做生态的难度堪比造原子弹」,开发一套操作系统不是最大的挑战,真正的挑战在于构建和维持强大的生态。

在今天这个时代,操作系统的成功与否,很大程度上取决于其应用生态是否能满足用户的广泛需求。

在Windows 10发布时,微软就希望通过UWP(Universal Windows Platform)统一Windows PC、手机、Xbox游戏主机、HoloLens等设备的应用生态。尽管想法很好,UWP最终因为缺乏强大的应用生态而难以为继,到2022年秋天,微软已经在开发文档中敦促开发者转向全新的Windows App SDK,基本宣告了UWP生态的死亡。

即便是微软,要在极其成熟的Windows PC生态之上「另起高楼」也是非常困难的。华为终端业务软件部总裁龚体就指出,「如果说打造鸿蒙操作系统是三大战役的话,目前已经完成了两个:鸿蒙底座已有1亿多行代码、2万多API;7亿多鸿蒙生态设备。第三个战役则是生态。生态成,则鸿蒙成!

在硬件上,操作系统厂商或许还能采取自主开发的方式,在软件方面不可能全部由自己开发,唯一的选择就是号召伙伴加入,引申下来的问题是如何培养、吸引更多鸿蒙开发人才,开发丰富的应用以满足消费者体验,进而吸引更多用户使用。

但如何吸引生态链上的开发者、伙伴加入,而盘活伙伴、开发者、用户的生态链条,正是打造一个生态最难的地方。

而事实上,鸿蒙生态已蓄力四年。

四年布局,一朝收官

在围棋里,一局棋通常会被分为布局、中盘、收官(官子)三个阶段。不同于中盘和收官,布局阶段因为往往落子较少,无法作精确的计算,所以极为考验棋手的大局观。

从这个角度来看,华为无疑是一位极具大局观的「棋手」。

今天回头再看过去100天鸿蒙生态取得的突破,显然不是一次无缘由的爆发,而是一场蓄力已久的冲刺。

2019年8月,华为消费者业务CEO余承东在华为开发者大会上发布了鸿蒙操作系统HarmonyOS,至今已迭代至HarmonyOS 4.0版本。为保证日常使用,目前用户可用的鸿蒙版本均可兼容安卓,但鸿蒙原生的种子却是在2019年就早早种下。

2019年开始,华为就在紧密接洽鸿蒙生态伙伴,与其签署鸿蒙应用开发协议。

四年之后的2023年9月,华为余承东宣布HarmonyOS NEXT蓄势待发,鸿蒙原生应用全面启动。而后鸿蒙生态捷报频传,合作企业纷纷宣布或启动、或完成鸿蒙原生应用Beta开发,至今,TOP200应用中已有超百个启动了鸿蒙原生适配工作。

开发者是创造生态活力的源泉,华为很早就开始培养和聚集鸿蒙开发者。

2020年,华为挑选了一批外部开发者先行接触内部代码,让他们从开发者专业视角为鸿蒙布道。过去几年间,华为密集举办开发者活动,组织了面向开发者的大赛、培训认证和沙龙,帮助开发者成长和进一步融入鸿蒙生态。另据统计,仅过去三年,华为就参与了超过100所高校的150多个课程项目,今天还在继续增加。

2020年,华为还升级了「耀星计划」,投入10亿美元激励开发者创新,并在过去三年不断升级,于2022年增加了对接入鸿蒙原子化服务(后更名为元服务)卡片、华为支付等方面开发者伙伴的激励。

2023年8月,华为又推出「鸿飞计划」(鸿蒙生态伙伴发展计划),面向鸿蒙原生适配伙伴提供资源扶持。

到2023年8月,已经有超过220万开发者投入到鸿蒙生态的开发,超过7亿台鸿蒙生态设备,这也是华为全面推动鸿蒙原生应用开发的底气所在。加之华为Mate 60系列打响了手机回归的关键一枪,汽车销量突飞猛进,年营收重回7000亿元,都在为鸿蒙生态打下坚实的发展基础。

鸿蒙千帆起,生态大局定

过去两个月内,支付宝、美团、高德地图、哔哩哔哩、中国银行、中国银联、中国国航、原神等18个领域的主流应用相继加入鸿蒙原生应用开发行列;小红书、爱奇艺、同花顺等App完成了鸿蒙原生应用Beta版的开发;航旅纵横、360浏览器等App也完成了鸿蒙原生应用核心版本的开发。

与主流应用相呼应,互联网「老钱」们纷纷表态。

搜狐集团董事长张朝阳在跨年演讲中断言「鸿蒙将引领操作系统下一轮变革」。360集团创始人、董事长周鸿祎更是公开力挺,「在任何情况下都会支持华为,相信鸿蒙会成为中国最大的操作系统,鸿蒙原生必将成功」。

**在人才方面,鸿蒙开发者更是逆势而上,成为招聘市场的香饽饽。**除了已经官宣的合作企业紧急招聘鸿蒙开发者,字节、百度、WPS等还未官宣的企业也在悄悄鸿蒙开发者岗位信息,鸿蒙开发者待遇普遍优于市场均值。

市场的正向激励让开发者群体变得更加踊跃,鸿蒙开发者注册数量甚至单日新增1万。不难想象,随着厂商的进一步扩大招聘以及更多鸿蒙开发者的进入,鸿蒙原生应用的数量、丰富度还会加速增长。

但长远来看最重要的其中一点还是「人才厚度」。在持续推进高校联合培养开发者的同时,有越来越多高校和学生拥抱鸿蒙生态。

据统计,包括清华大学、哈尔滨工业大学、西安交通大学等在内的23家985高校、46家211高校都已经或即将开设鸿蒙相关课程,南京大学就开设了《移动互联网软件工程》课程,将HarmonyOS作为课程核心,替换了原有的安卓开发课程。

为了能让大家更好的学习鸿蒙 (Harmony OS) 开发技术,这边特意整理了《鸿蒙 (Harmony OS)开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙 (Harmony OS)开发学习手册》

入门必看:https://qr21.cn/FV7h05

  1. 应用开发导读(ArkTS)
  2. ……

HarmonyOS 概念:https://qr21.cn/FV7h05

  1. 系统定义
  2. 技术架构
  3. 技术特性
  4. 系统安全

如何快速入门?:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. 构建第一个JS应用
  4. ……

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ……

基于ArkTS 开发:https://qr21.cn/FV7h05

1.Ability开发
2.UI开发
3.公共事件与通知
4.窗口管理
5.媒体
6.安全
7.网络与链接
8.电话服务
9.数据管理
10.后台任务(Background Task)管理
11.设备管理
12.设备使用信息统计
13.DFX
14.国际化开发
15.折叠屏系列
16.……

相关文章:

纯血鸿蒙「扩圈」100天,酝酿已久的突围

坦白讲,去年参加华为开发者大会看到HarmonyOS NEXT(仅运行鸿蒙原生应用,所以也称作「纯血鸿蒙」)的时候,小雷也没料想到鸿蒙原生应用生态的发展速度会如此之快。 9月25日,华为正式对外宣布启动HarmonyOS NE…...

UICollection Compositional Layout全详解

本文字数:8325字 预计阅读时间:45分钟 01 Collection View Layout全详解 UICollectionView在iOS中是构建复杂布局的强大工具。iOS13中引入的 UICollectionViewCompositionalLayout为创建自定义布局提供了全新的可能性。本文将深入探讨Compositional Lay…...

单例模式的模板

参考了网上的一些单例模式&#xff0c;自己也写一个模板。 要点&#xff1a; 线程安全性单例对象的唯一性 #include <mutex> //在模板类 Singleton 中&#xff0c;可以定义单例模式的实现细节 template <typename T> class Singleton { public://通过删除拷贝构造…...

C#基础-空处理

在c#中&#xff0c;值对象是没有办法赋值为null的。比如说&#xff0c;你想要定义一个布尔值&#xff0c;你的赋值数据要么得是true、要么就得是false&#xff0c;默认情况下我们永远没可能给这个布尔赋值为null&#xff0c;即使只是对这个变量进行声明而不初始化数据&#xff…...

测试平台开发vue组件化重构前端代码

基于 springbootvue 的测试平台开发 继续更新&#xff08;人在魔都 T_T&#xff09;。 这期其实并不是一个详细的开发过程记录&#xff0c;主要还是针对本次前端重构来聊聊几个关注点。 目前重构的总进度在80%&#xff0c;重构完的页面没什么变化&#xff0c;再回顾一下。 一…...

龍运当头--html做一个中国火龙祝大家龙年大吉

🐉效果展示 🐉HTML展示 <body> <!-- partial:index.partial.html --> <svg><defs><g id=...

Dockerfile语法和简单镜像构建

Dockerfile是一个用于定义Docker镜像的文本文件&#xff0c;包含了一系列的指令和参数&#xff0c;用于指示Docker在构建镜像时应该执行哪些操作&#xff0c;例如基于哪个基础镜像、复制哪些文件到镜像中、运行哪些命令等。 Dockerfile文件的内容主要有几个部分组成&#xff0c…...

uniapp使用wxml-to-canvas开发小程序保存canvas图片

微信小程序官方解决方案&#xff1a;wxml-to-canvas 使用wxml-to-canvas要知道一些前提条件 1、只能画view&#xff0c;text&#xff0c;image 2、每个元素必须要设置宽高 3、默认是flex布局&#xff0c;可以通过flexDirection: "column"来改变排列方式 4、文字 必…...

关于数据库切换的麻烦

背景介绍 现项目使用了两个数据源&#xff0c;分别为A、B&#xff0c;两个数据库的数据结构并不相同&#xff0c;数据库A是用来做查询一些基本信息的&#xff0c;数据库B是用来保留业务操作数据的。后端是在mapper层用DS注解来区分哪些地方用数据库A&#xff0c;而哪些地方用数…...

Qt/QML编程学习之心得:Linux下读写文件File(24)

在Linux嵌入式系统中,经常会使用Qt来读写一个文件,判断一个文件是否存在,具体如何实现呢? 首先,要使用linux系统中相关的头文件: #include <unistd.h> #include <stdio.h> #include <stdlib.h> 其次,判断路径是否存在, if(!dir.exists()){mkdir(…...

【Vue2+3入门到实战】(22)VUE3之组合式API - setup、reactive和ref函数、computed、watch、生命周期函数详细讲解

目录 一、组合式API - setup选项1. setup选项的写法和执行时机2. setup中写代码的特点3. <script setup>语法糖 二、组合式API - reactive和ref函数1. reactive2. ref3. reactive 对比 ref 三、组合式API - computed四、组合式API - watch1. 侦听单个数据2. 侦听多个数据…...

如何在互联网上找到你想要的数据?

互联网时代&#xff0c;信息爆炸&#xff0c;怎么在网上查到到自己想要的信息已经变难了。毕竟经常搜索的内容前几页都是广告。 那么如何在大量的广告和垃圾信息中获取到自己想要的信息呢? 首先&#xff0c;明确自己的需求&#xff0c;比如你想找哪个方面的数据&#xff0c;…...

揭秘淘宝商品详情API如何助力电商创新发展

淘宝商品详情API是淘宝开放平台提供的一种数据接口服务&#xff0c;能够获取到淘宝网商品详情的各种信息&#xff0c;包括商品标题、价格、销量、评价等。通过淘宝商品详情API&#xff0c;开发者可以轻松地获取到这些数据&#xff0c;并利用这些数据进行商业分析和应用开发。 …...

vue element plus Space 间距

虽然我们拥有 Divider 组件&#xff0c;但很多时候我们需要不是一个被 Divider 组件 分割开的页面结构&#xff0c;因此我们会重复的使用很多的 Divider 组件&#xff0c;这在我们的开发效率上造成了一定的困扰。 间距组件就是为了解决这种困扰应运而生的。 基础用法# 最基础…...

【驱动序列】C#获取电脑硬件之CPU信息,以及它都有那些品牌

欢迎来到《小5讲堂》&#xff0c;大家好&#xff0c;我是全栈小5。 这是是《驱动序列》文章&#xff0c;每篇文章将以博主理解的角度展开讲解&#xff0c; 特别是针对知识点的概念进行叙说&#xff0c;大部分文章将会对这些概念进行实际例子验证&#xff0c;以此达到加深对知识…...

目标检测-One Stage-YOLO v3

文章目录 前言一、YOLO v3的网络结构和流程二、YOLO v3的创新点总结 前言 根据前文目标检测-One Stage-YOLOv2可以看出YOLOv2的速度和精度都有相当程度的提升&#xff0c;但是精度仍较低&#xff0c;YOLO v3基于一些先进的结构和思想对YOLO v2做了一些改进。 提示&#xff1a;…...

安泰ATA-4014高压功率放大器在传感器脉冲涡流检测中的应用

传感器在工程领域起着至关重要的作用&#xff0c;能够实时获取各种物理量的信息。而功率放大器作为传感器信号处理的重要组成部分&#xff0c;广泛应用于各种测量和控制系统中。本文将探讨功率放大器在这一领域的重要性和作用。 首先&#xff0c;了解传感器脉冲涡流检测的基本原…...

Axure全面指南:正确打开并高效使用的步骤!

AxureRP是目前流行的设计精美的用户界面和交互软件。AxureRP根据其应用领域提供了一组丰富的UI控制。作为Axure的国内替代品&#xff0c;即时设计可以在线协作&#xff0c;浏览器可以在无需下载客户端的情况下打开和使用。如果以前使用Axure&#xff0c;很容易切换到即时设计。…...

ts axios 指定返回值类型,返回数据类型不确定该怎么办 typescript

ts axios 指定返回值类型&#xff0c;返回数据类型不确定该怎么办 typescript 转到 ts 以来&#xff0c;一直有个问题困扰着我&#xff0c;就是每次用 axios 获取数据时&#xff0c;返回值 res 的类型都不能确定&#xff0c;这就导致编辑器一直提示我&#xff1a; 原因 原因是…...

判断是否是json字符串

一、在isJson.js文件里创建一个isJson类并抛出 /*** isJson 类用于判断一个字符串是否为有效的 JSON 字符串。* class isJson* param {string} str - 要判断的字符串。* returns {boolean} 如果字符串是有效的 JSON 字符串&#xff0c;则返回 true&#xff1b;否则返回 false。…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端

&#x1f31f; 什么是 MCP&#xff1f; 模型控制协议 (MCP) 是一种创新的协议&#xff0c;旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议&#xff0c;它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...

uniapp微信小程序视频实时流+pc端预览方案

方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度​WebSocket图片帧​定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐​RTMP推流​TRTC/即构SDK推流❌ 付费方案 &#xff08;部分有免费额度&#x…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下&#xff0c;知识图谱凭借其高效的信息组织能力&#xff0c;正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合&#xff0c;探讨知识图谱开发的实现细节&#xff0c;帮助读者掌握该技术栈在实际项目中的落地方法。 …...

EtherNet/IP转DeviceNet协议网关详解

一&#xff0c;设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络&#xff0c;本网关连接到EtherNet/IP总线中做为从站使用&#xff0c;连接到DeviceNet总线中做为从站使用。 在自动…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

聊一聊接口测试的意义有哪些?

目录 一、隔离性 & 早期测试 二、保障系统集成质量 三、验证业务逻辑的核心层 四、提升测试效率与覆盖度 五、系统稳定性的守护者 六、驱动团队协作与契约管理 七、性能与扩展性的前置评估 八、持续交付的核心支撑 接口测试的意义可以从四个维度展开&#xff0c;首…...

uniapp 字符包含的相关方法

在uniapp中&#xff0c;如果你想检查一个字符串是否包含另一个子字符串&#xff0c;你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的&#xff0c;但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...

OD 算法题 B卷【正整数到Excel编号之间的转换】

文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的&#xff1a;a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...

阿里云Ubuntu 22.04 64位搭建Flask流程(亲测)

cd /home 进入home盘 安装虚拟环境&#xff1a; 1、安装virtualenv pip install virtualenv 2.创建新的虚拟环境&#xff1a; virtualenv myenv 3、激活虚拟环境&#xff08;激活环境可以在当前环境下安装包&#xff09; source myenv/bin/activate 此时&#xff0c;终端…...