## uni.getSystemInfo(options) @getsysteminfo > HBuilderX4.13-alpha版本,uniPlatform属性在 app 平台临时调整过,由 `app` 改为 `app-android`、`app-ios`,HBuilderX 4.14-alpha版本已回撤此调整。如果开发者使用HBuilderX4.13-alpha版发布项目时使用了uni-id-common、uni-id、uni-id-pages或uni-id-pages-x,则需要分别升级到如下版本来兼容此次临时调整:uni-id@3.3.32、uni-id-common@1.0.17、uni-id-pages@1.1.20、uni-id-pages-x@1.1.1 uni-app 提供了异步(`uni.getSystemInfo`)和同步(`uni.getSystemInfoSync`)的2个API获取系统信息。 按照运行环境层级排序,从底层向上,systemInfo有6个概念: - `device`:运行应用的设备,如iphone、huawei - `os`:设备的操作系统,如 ios、andriod、windows、mac、linux - `rom`:基于操作系统的定制,Android系统特有概念,如miui、鸿蒙 - `host`:运行应用的宿主程序,即OS和应用之间的运行环境,如浏览器、微信等小程序宿主、集成uniMPSDK的App - `uni`:uni-app框架相关的信息,如uni-app框架的编译器版本、运行时版本 - `app`:开发者的应用相关的信息,如应用名称、版本 因本API涉及的信息越来越多,查询速度会逐渐变慢。由此拆解分出3个新API,[uni.getDeviceInfo](get-device-info.md)、[uni.getAppBaseInfo](get-app-base-info.md)、[uni.getWindowInfo](get-window-info.md)。新API包含的信息更多。 - appTheme如取值为`auto`,代表跟随系统。此时需查询osTheme获取当前到底是light还是dark。 - 获取OAID、AndroidID等其他设备信息,[见插件市场](https://ext.dcloud.net.cn/search?q=oaid&orderBy=Relevance&uni-appx=1) - Android端的`windowHeight`属性是有时机的考量的,如果在全局作用域获取`windowHeight`,有可能当前Activity还未加载,所以导航栏和Tabbar的高度是不会计算进去的,稳妥起见,建议在`onReady`或者`onPageShow`内获取`windowheight`。 - `windowHeight`属性是依赖于调用Api时栈顶Page的,比如延迟获取`windowHeight`,很可能页面已经切换了,这时候获取的高度是新的页面的。 - 仅iOS有安全区概念 #### romName 返回值说明 @romname |值|解释| |:-|:-| |MIUI|小米| |EMUI|华为| |HarmonyOS|华为鸿蒙| |Magic OS|荣耀| |ColorOS|oppo| |Funtouch OS|vivo| |FLymeOS|魅族| |SmartisanOS|锤子| 注意:不同rom的版本号规则不同,比如`MIUI`版本号是`V130`,而`HarmonyOS`的版本号是`2.0.0` #### hostName 返回值说明 @hostname |值|解释| |:-|:-| |WeChat|微信| |wxwork|微信企业版| |[百度宿主平台枚举值列表](https://smartprogram.baidu.com/docs/develop/api/device_sys/hostlist/)|百度| |alipay|支付宝| |amap|高德| |DINGTALK|钉钉| |UC|UC浏览器| |QUARK|夸克浏览器| |AK|阿里健康| |YK|优酷| |[抖音宿主平台枚举值列表](https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/api/device/system-information/tt-get-system-info/#appname-%E8%AF%B4%E6%98%8E)|抖音系列| |qq|QQ| |KUAISHOU|快手| ## uni.getSystemInfoSync() @getsysteminfosync 本API是同步API,仅为上面异步API的同步形式,返回值内容没有区别。但由于本API涉及的查询内容较多,耗时长,一般情况下不推荐同步获取。\ 如果希望使用同步方式,推荐使用分拆后的API:[uni.getDeviceInfo](./get-device-info.md)、[uni.getWindowInfo](./get-window-info.md)、[uni.getAppBaseInfo](./get-app-base-info.md)。