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以前走的老路,但未来发展前景较好,可以学习一波

相关推荐
计算机毕业论文辅导2 天前
物联网实战:基于MQTT协议的智能家居数据传输系统设计与实现
1024程序员节
开开心心就好2 天前
支持批量处理的视频分割工具推荐
安全·智能手机·rust·pdf·电脑·1024程序员节·lavarel
liuyao_xianhui4 天前
Linux开发工具结尾 _make
linux·运维·服务器·数据结构·哈希算法·宽度优先·1024程序员节
学传打活6 天前
【边打字.边学昆仑正义文化】_21_爱的结晶(1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
数据皮皮侠AI13 天前
顶刊同款!中国地级市风灾风险与损失数据集(2000-2022)|灾害 / 环境 / 经济研究必备
大数据·人工智能·笔记·能源·1024程序员节
Fab1an14 天前
Busqueda——Hack The Box 靶机
linux·服务器·学习·1024程序员节
技术专家15 天前
Stable Diffusion系列的详细讨论 / Detailed Discussion of the Stable Diffusion Series
人工智能·python·算法·推荐算法·1024程序员节
学传打活17 天前
古代汉语是源,现代汉语是流,源与流一脉相承。
微信公众平台·1024程序员节·汉字·中华文化
学传打活22 天前
【边打字.边学昆仑正义文化】_19_星际生命的生存状况(1)
微信公众平台·1024程序员节·汉字·昆仑正义文化
unable code1 个月前
[HNCTF 2022 WEEK2]ez_ssrf
网络安全·web·ctf·1024程序员节