鸿蒙应用:区分真机和模拟器

一、问题场景

在调试应用代码时,需要判断当前运行的设备是真机 还是模拟器,可以通过检查特定的系统属性或环境变量来实现区分。

二、解决

在应用中,使用 @ohos.deviceInfo 模块的 productModel 属性来区分真机和模拟器。

判断规则:

模拟器上,productModel 的值为 emulator。

示例:

复制代码
import deviceInfo from '@ohos.deviceInfo';

// 模拟器上 productModel 的值为 'emulator'
const isEmulator = deviceInfo.productModel === 'emulator';

if (isEmulator) {
  // 模拟器环境
} else {
  // 真机环境
}

判断方法极简单,用 @ohos.deviceInfo 模块的 productModel 属性,模拟器的值是 emulator,真机则不是。

如果需要更细的环境判断(比如模拟器型号、真机品牌),可以结合 deviceInfo 模块的其他属性(如 brand、model 等),但区分真机/模拟器这一核心需求,productModel === 'emulator' 就够了。

相关推荐
时间的情敌1 小时前
鸿蒙开发日常随笔|写代码、调真机、踩坑碎碎念
华为·harmonyos
ToDesk_Daas11 小时前
深度适配鸿蒙生态,ToDesk 迎来版本升级,全面优化远程操控体验
华为·harmonyos
贾伟康11 小时前
【化学实验室|15】HarmonyOS ArkTS 本地状态持久化实战:让保存、删除和页面返回后的数据即时一致
harmonyos·arkts·本地存储·arkui·preferences
行者-全栈开发17 小时前
【共创稿事节】HarmonyOS 7 轻量悬浮窗口选型与闪控窗接入:闪控球、闪控窗、系统悬浮窗到底怎么选
harmonyos·鸿蒙·arkui·闪控窗·api 26·选型决策树·闪控球
OH_TPC19 小时前
@ohos/axios 源码解读(二):适配层是一场翻译,而翻译要处理四类错位
harmonyos
CV工程师丁Sir1 天前
ArkWeb 手记 11:Web 组件与原生动画的协同
harmonyos·混合开发·arkweb
CV工程师丁Sir1 天前
ArkWeb 手记 12:Web 组件内存泄漏排查实录
性能优化·harmonyos·arkweb
用户29469405448162 天前
DSH Desktop - Electron on HarmonyOS Edition
harmonyos·deepseek
IsITGirl2 天前
HarmonyOS 鸿蒙 WuKong 稳定性测试报错 Failed to connect to AAMS(已解决)
华为·harmonyos