如何判断Android应用运行在鸿蒙系统上

/ 今日科技快讯 /
近日,埃隆·马斯克表示,太空探索技术公司SpaceX正在研发的星际飞船可以在太空中来回飞行,“粉碎掉太空垃圾”。星际飞船是SpaceX许多目标的核心装备,目前仍在开发中。马斯克希望最终用星际飞船把人送到月球和更远的深空。SpaceX已经对飞船原型进行了不少次测试。
/ 作者简介 /
本篇文章来自老司机椎锋陷陈的投稿,和大家分享了如何判断应用是否运行在鸿蒙系统上,相信会对大家有所帮助!同时也感谢作者贡献的精彩文章!
椎锋陷陈的博客地址:
https://blog.csdn.net/Alfred_C
/ 前言 /
不久前,HarmonyOS 2.0的正式发布,在华为用户及科技产品爱好者之间掀起了不小的波澜。其中,讨论关于HarmonyOS是如何兼容Android应用的话题最为频繁,从而引发了多方阵营关于「HarmonyOS究竟是否是套壳Android」的激烈争论。
与此同时,部分嗅到风向的开发者,已经在部署如何收集应用在HarmonyOS上的兼容情况了。这不,笔者所在的公司就安排我去进行相关的技术调研。其中,最重要的一点就是判断当前应用是否搭载在了HarmonyOS上,从而统计升级HarmonyOS的用户数量,作为后续公司战略方向可能调整的依据。
/ OpenHarmony与Harmony OS /
首先,让我们先为前面的争论下一个明确的定论,即:
HarmonyOS并非套壳Android。
我们通常意义上所讲的HarmonyOS,实际分成了两部分,一部分是 OpenHarmony,另一部分则是包括HMS在内的闭源应用与服务。
OpenHarmony是由开放原子开源基金会孵化及运营的开源项目,其性质与定位可参照Android开放源代码项目(AOSP) 。
而HarmonyOS 2.0则是华为基于OpenHarmony 2.0开发的面向多种全场景智能设备的商用版本。HarmonyOS 2.0遵循了AOSP的开源许可,从而实现了现有Android生态应用在部分搭载HarmonyOS 2.0的设备上的正常运行。
目前在HarmonyOS 2.0上存在两种类型的应用,即
-
纯HarmonyOS应用(指基于HarmonyOS开发的应用,不能安装在其他Android手机上,应用体积很小,但同时功能也很少)
-
支持HarmonyOS特性的应用(基于Android开发的应用,但是使用了 HarmonyOS的特性,通过工具导出时后缀仍然是A*)
Android系统配置介绍
adb命令行工具
-
adb shell getprop 可以查看手机上所有属性值。
-
abb shell getprop xxx 可以查看某个指定属性值。

SystemProperties类
/**
* 获取鸿蒙系统版本号
*/
fun getHarmonyOsVersion(): String {
return if (isHuaweiBrand() && isHarmonyOs()) {
try {
val cls = Class.forName("android.os.SystemProperties")
val method = cls.getMethod("get", String::class.java)
method.invoke(cls, "ro.huawei.build.display.id") as String
} catch (e: Exception) {
"-1"
}
} else {
"-1"
}
}
/**
* 获取鸿蒙系统版本号
*/
fun getHarmonyOsVersion(): String {
return if (isHuaweiBrand() && isHarmonyOs()) {
Build.DISPLAY
} else {
"-1"
}
}
public static final String DISPLAY = getString("ro.build.display.id");
private static String getString(String property) {
return SystemProperties.get(property, UNKNOWN);
}
public static String get(@NonNull String key, @Nullable String def) {
if (TRACK_KEY_ACCESS) onKeyAccess(key);
return native_get(key, def);
}



/**
* 当前是否是鸿蒙系统
* 根据是否能调用Harmony JAVA API判断
*/
fun isHarmonyOs(): Boolean {
return try {
val cls = Class.forName("ohos.utils.system.SystemCapability")
cls != null
} catch (e: Exception) {
false
}
}




相关文章:
短剧《正在通话中》完整版
短剧大结局《娘娘吉人自有天相》后续完整版(合集/后续大结局)
妙手云医app(内附攻略)
短剧《真千金她是福星锦鲤》完整版
魔兽世界插件更新软件,桃乐豆推出收费服务,绿钻6.8,紫钻9.8,免费用户服务部分缩减
实用插件!小红书图片视频无水印下载
Mplus 7.4 软件及代码
【Ai插件免费下载】85全套合集 – 支持CS6-2025
PHPSiYU同|城源码开源
免费CAD插件V1.1更新
读赢波经APP安装方式
不需要插件,使用CAD万能字体自动替换缺失字体!
【资讯】各大App付费用户数量排行榜出炉 你订阅过哪家?
这24款App被通报!赶紧卸载!
热门短剧《超级教师第二季》完整版1-73集/小程序大结局/合集/后续
比亚迪APP开启“驾驶辅助报告”内测!附:非内测车主提前尝鲜攻略!
热门短剧《鲁班秘术之杀局》完整版1-58集/大结局/合集
又封中国APP,这次号称“永久”!
超好看!热门短剧丨大结局《挪威的风,吹散誓言》全集在线看
热门短剧《消失的拳王》1-72(完整版/后续/大结局)
违法违规!54款App被通报!
【软件插件】红移渲染器(Redshift) V3.0.16安装教程及下载
《成绩统计排名》Excel插件【镇级用】
【插件】PS超级酷炫特效插件 让你的作品与众不同!
热门短剧《霸王餐风波》全集/完整版
2025年度爱用SU插件合集!收藏!
一个全新的源代码搜索引擎,专为软件开发者设计
短剧《至此飞鸟不相逢》完整版1-70集(后续/大结局/合集)
1月2日高质量短剧推荐!
Android:哔哩哔哩第三方电视TVapp BV_0.3.10
【WordPress开源免费插件4】自定义广告
稀缺资源,免费提供2025年度最牛AE插件合集(含安装教程),全能型人才必备!
爆款短剧《盛世阑珊处》完整版1-57集/大结局/合集
VSCode 必装50款插件,编码效率翻倍
别再被“源码”忽悠了!软件开发的坑,你踩过吗?
Blender插件-三维人物角色动作自动绑定 Auto-Rig Pro v3.76.29+Quick Rig V1.26.46
热门短剧推广
百度网盘资源免费领取 软件大全(一)
国家医保平台app下载
1月4日高质量短剧推荐!
【12.27周六】获得免费插件之后 | 黑马内&豪华露营
OBS美颜|直播|保姆级教程:OBS美颜插件下载安装步骤参数设置使用教程
3个信息差赚钱小项目(附软件、源码)
唱享K歌app全新升级百万曲库
短剧版《许我耀眼》陈添祥&朱小雪新剧《格林童话》
揭秘软件咨询界的“黄埔军校”
每一个开发者都必装的十大 Chrome 插件
军队采购网APP上线,便捷查询军队采购资讯(附下载链接)
熬夜必追短剧《千金女友非我不嫁》完整版1-87集/大结局/合集
83款超全CAD插件合集收集了常用的CAD插件安装教程(含安装包)