明年,HarmonyOS不再兼容Android应用!

2023年华为开发者大会,不知道各位老铁们是否观看了,一个震撼的消息就是,首次公开了HarmonyOS NEXT的概念,简而言之就是,这是一款专为开发者打造的预览版操作系统,旨在提供"纯正鸿蒙操作系统"的体验。与之前的版本不同,HarmonyOS NEXT完全摒弃了与Android的兼容性,而是基于OpenHarmony开源项目进行开发。这意味着在该系统上运行Android应用将无法实现,而只能使用原生HarmonyOS应用。

一句话概括,明年开始,更新后的鸿蒙,Android APK 将不允许在 HarmonyOS NEXT 上运行,因为系统已经不存在 AOSP 代码。

更新后的鸿蒙,它会使用全自研内核,仅支持鸿蒙内核和鸿蒙系统的应用,将会减少了 40% 的冗余代码,使系统的流畅度、能效、纯净安全特性大为提升。

对于移动端的开发者而言,这绝对是一件大事,有可能改变当下的移动端系统格局,当然了,对于开发者而言,特别是Android开发者而言,即将面临着一个全新的挑战,不得不重新学习起来,卷起来未必是坏事,多个语言则多个就业渠道,凡是还是两面看问题。

以往对于HarmonyOS,我们只是持观望状态,毕竟它虽然是一个全新的系统,但因生态不完善,从诞生之初,就对Android应用有着完美的兼容,对于我们开发者而言,也很少去关注它,毕竟和我们也没有直接的关系,而今天,华为“断臂求生”,决定和Android一刀两断,身为一名Android开发者,你不得不沉下心来,关注一下,否则,明年,将会措手不及。

HarmonyOS生态

之前一直不看好HarmonyOS,就是因为生态,一个新事务的诞生,如果没有一个良好的生态,其前景肯定是一片渺茫,Android和iOS之所以发展的如火如荼,一个最重要的原因就是,生态的健全,有大量的厂商和无数的开发者,前仆后继,踊跃贡献,造就了今日的移动端称霸格局,至于HarmonyOS离开Android之后能否分得一杯羹,今日看来,确实有希望,要不然绝不会这么果断的一刀两断。

从HDC的最新数据来看,HarmonyOS的设备数量目前已超过 7 亿,将近有220 万 HarmonyOS 开发者投入到鸿蒙世界的开发中,其API每天调用次数可达590亿次,软硬件产品已超过 350 款,可见HarmonyOS的生态没有大家潜意识中的那么不堪。

为了生态的建设,华为在开发者工具、调试支持、性能优化等方面做了大量的工作,力求为开发者提供更好的开发环境和用户体验。此外,华为还设立了开发者社区和论坛,为开发者提供了一个交流、学习、解决问题的平台,由此可见,华为对于HarmonyOS的生态的发展,一直在不断的改善和前进。

除了工具、论坛、开发者等生态的建设,在前不久的开发者大会中,华为终端BG全球生态发展与运营部总裁戢仁贵,重磅发布鸿蒙生态伙伴发展计划——“鸿飞计划”,未来三年面向鸿蒙生态伙伴投入百亿,其支持力度,不可谓不大。

HarmonyOS未来发展

据了解,HarmonyOS NEXT开发者预览版8月面向合作企业开发者开放,2024年第一季度面向所有开发者开放,当前已经是2023年8月份,可谓时间已经迫在眉睫,届时全球的开发者都可以一睹其风采,共同探索鸿蒙系统的无限可能。

华为终端云服务总裁朱勇刚此前预测,未来一年HarmonyOS NEXT开发者预览版的升级用户将突破1亿,也就是说未来会有越来越多的鸿蒙原生应用推出。

对于开发者而言

对于开发者而言,iOS端影响不大,直接有影响的就是Android开发者,毕竟华为手机有着大量的用户基础,你不得不进行适配,所以,HarmonyOS,你不得不进行学习,还好,HarmonyOS上手并不是很难,其语言和Flutter与Compose很类似,有着这方面基础的开发者,上手会很快。

话又说回来,作为一名Android开发者,用两套语言开发两个应用,无疑加大了开发成本,未来的时刻,还有希望有一门语言,可以兼顾Android和HarmonyOS,比如使用Flutter,使用Compose,如果HarmonyOS发展壮大之后,跨平台语言绝对会出来,短时间内也绝对如雨后春笋,不然,一个新的岗位即将诞生:HarmonyOS开发工程师。

当然了这一切的前提是,HarmonyOS支持,若不支持,则不得不使用Harmony进行开发。

总的来说,HarmonyOS NEXT是华为在智能设备领域的一次重要创新和突破。它不仅带来了全新的用户体验,也为开发者提供了一个更为强大、灵活和开放的开发平台。随着HarmonyOS NEXT的进一步推广和应用,我们有理由相信,未来的智能设备将会更加智能、便捷和人性化。

余下的时间已不多,明年HarmonyOS能否和Android分庭抗礼,我们拭目以待!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/60269.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker入门——保姆级

Docker概述 ​ —— Notes from WAX through KuangShen 准确来说,这是一篇学习笔记!!! Docker为什么出现 一款产品:开发—上线 两套环境!应用环境如何铜鼓? 开发 – 运维。避免“在我的电脑…

243. 一个简单的整数问题2(树状数组)

输入样例: 10 5 1 2 3 4 5 6 7 8 9 10 Q 4 4 Q 1 10 Q 2 4 C 3 6 3 Q 2 4输出样例: 4 55 9 15 解析: 一般树状数组都是单点修改、区间查询或者单点查询、区间修改。这道题都是区间操作。 1. 区间修改用数组数组维护差分数组 2. 区间查询&am…

云原生之深入解析如何使用Devtron简化K8S应用开发

一、NeuVector 简介 ① 什么是 NeuVector ? NeuVector 是业界首个端到端的开源容器安全平台,唯一为容器化工作负载提供企业级零信任安全的解决方案。NeuVector 是业界领先的安全和合规解决方案,已被全球知名企业广泛采用;其代码…

适用HarmonyOS 3.1版本及以上的应用及服务开发工具 DevEco Studio 3.1.1 Release 安装

文章目录 安装步骤1.下载安装包2.安装成功后,初次运行studio2.1 配置node与ohpm的环境2.2安装sdk2.3等待安装结束 3.创建项目3.1 点击Create Project3.2 选择一个空项目3.3 项目配置3.4 Finish、等待依赖下载完毕3.5 项目创建完成 tip 提示4.配置运行环境4.1 真机运…

爬虫015_python异常_页面结构介绍_爬虫概念介绍---python工作笔记034

来看python中的异常 可以看到不做异常处理因为没有这个文件所以报错了 来看一下异常的写法

Idea 反编译jar包

实际项目中,有时候会需要更改jar包源码来达到业务需求,本文章将介绍一下如何通过Idea来进行jar反编译 1、Idea安装decompiler插件 2、找到decompiler插件文件夹 decompiler插件文件夹路径为:idea安装路径/plugins/java-decompiler/lib 3、…

正则表达式的使用

1、正则表达式-教程 正则表达式:文本模式,包括普通字符(例如,a到z之间的字母)和特殊字符(称为元字符)。 正则表达式使用单个字符串来描述,匹配一系列匹配某个句法规则的字符串。 2、…

【uniapp】一文读懂app端安装包升级

一、前言 首先,在app端开发上线的过程中,会面临一个问题,就是关于app端的版本升级的问题。如果不做相关处理来引导用户的话,那么app就会出现版本没有更新出现的各种问题,我们常见的有在线升级和去指定地址下载安装两种…

计算机网络—IP

这里写目录标题 IP的基本认识网络层与数据链路层有什么关系IP地址基础知识IP 地址的分类什么是A、B、C类地址广播地址用来做什么什么是D、E类广播多播地址用于什么IP分类的优点IP分类的缺点 无分类地址CIDR如何划分网络号和主机号怎么进性子网划分 公有 IP 地址与私有 IP 地址公…

修改el-select样式;修改element-plus的下拉框el-select样式

修改el-select样式 .select_box{// 默认placeholder:deep .el-input__inner::placeholder {font-size: 14px;font-weight: 500;color: #3E534F;}// 默认框状态样式更改:deep .el-input__wrapper {height: 42px;background-color: rgba(0,0,0,0)!important;box-shadow: 0 0 0 …

获取Spring中bean工具类

获取Spring中bean工具类 工具类 package com.geekmice.springbootselfexercise.utils;import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org…