Android 原生开发与Harmony原生开发浅析

Android系统 基于Linux ,架构如下

底层 (Linux )> Native ( C++层) > FrameWork层 (SystemService) > 系统应用 (闹钟/日历等)

从Android发版1.0开始到现在15,经历了大大小小的变革

从Android6.0以下是个分水岭,6.0之前权限都是直接卸载Manifest中配置

6.0开始 则分普通权限和敏感权限 比如 读写外部存储/打开摄像头/定位 等

7.0/7.1 应用快捷方式/圆形图标支持/键盘图片输入/指纹手势支持/夜间模式和屏幕色彩校准

8.0/8.1:通知渠道/画中画模式/后台限制/自动填充 API/自适应图标/应用安装的增强功能/WebView 多进程模式/下载速度指示器等

9.0 : 手势导航/数字健康/TLS 默认启用/多摄像头支持/ART(Android Runtime)优化等

10.0:深色模式/后台访问限制/暗黑模式 API/

11/12/13/14/15...................................

自从2020年之后,鸿蒙开发的热度逐渐增加

最开始鸿蒙开发是FA模型 即嵌入了JavaScript,模型如下:

现在则是Stage,模型如下:

现在FA模型逐渐被弃用,推荐是Stage模型,Arkts语言+ArkUI

风格类似于现在的Flutter

Android or Harmony系统差异:

Android 系统安装包为.apk 有着AOSP(Android Open Source Project)

Harmony早期版本也支持Android+Harmony 现在已经将AOSP剥离出去,如果有开发需求需要学习鸿蒙来进行适配

适配:

Harmony 从开始的 1.0到现在5.0 发展了几年,其中坑还是不少的,不少弃用的API以及API的变更

每个版本都需要单独适配,后续应该还会上仓颉编程语言 与现在的Arkts或许不兼容,ArkTs基于TypeScript 改进的,而仓颉则是独立开发的语言,未来变动,尚未可知

Android适配无非就是判断版本,单独适配以及现在ndk的page对齐

总结:

鸿蒙开发近几年不会代替Android开发,同样Android也不会代替鸿蒙,各自的领域不同

Android不管是手机还是车载等,发展空间还是比较大

Harmony新兴的系统,学习以及开发上需要投入一些成本,走Android以前走的老路,但未来发展前景较好,可以学习一波

相关推荐
Predestination王瀞潞16 分钟前
Java EE开发技术(第五章:JSP技术)
1024程序员节
AORO20252 小时前
三防平板三防是指哪三防?适合应用在什么场景?
服务器·网络·智能手机·电脑·1024程序员节
极客数模2 小时前
【浅析赛题,一等奖水平】思路模型数据相关资料!2025 年“大湾区杯”粤港澳金融数学建模竞赛B 题 稳定币的综合评价与发展分析~
大数据·算法·数学建模·金融·数据挖掘·图论·1024程序员节
再睡一夏就好3 小时前
【C++闯关笔记】使用红黑树简单模拟实现map与set
java·c语言·数据结构·c++·笔记·语法·1024程序员节
TDengine (老段)4 小时前
益和热力性能优化实践:从 SQL Server 到 TDengine 时序数据库,写入快 20 秒、查询提速 5 倍
大数据·数据库·物联网·性能优化·时序数据库·tdengine·1024程序员节
B站计算机毕业设计之家6 小时前
python图像识别系统 AI多功能图像识别检测系统(11种识别功能)银行卡、植物、动物、通用票据、营业执照、身份证、车牌号、驾驶证、行驶证、车型、Logo✅
大数据·开发语言·人工智能·python·图像识别·1024程序员节·识别
艾莉丝努力练剑6 小时前
【Linux基础开发工具 (一)】详解Linux软件生态与包管理器:从yum / apt原理到镜像源实战
linux·运维·服务器·ubuntu·centos·1024程序员节
杰克尼6 小时前
单词11/1
1024程序员节
懒羊羊不懒@6 小时前
JavaSe—泛型
java·开发语言·人工智能·windows·设计模式·1024程序员节
开心-开心急了15 小时前
PySide6 实现win10 手动与自动切换主题 借助系统托盘
pyqt·1024程序员节·pyside