uni.getSystemInfo(options)
异步获取系统信息
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-app直接开发的app没有host概念 uni
:uni-app框架相关的信息,如uni-app框架的编译器版本、运行时版本 app
:开发者的应用相关的信息,如应用名称、版本
详见
Parameters
GetSystemInfoOptions Values
name | type | optinal | default | description |
success | (result: GetSystemInfoResult) => void | NO | null | 接口调用成功的回调函数 |
fail | (result: UniError) => void | NO | null | 接口调用失败的回调函数 |
complete | (result: any) => void | NO | null | 接口调用结束的回调函数(调用成功、失败都会执行) |
GetSystemInfoResult Values
name | type | optinal | default | description |
SDKVersion | string | YES | - | 客户端基础库版本 |
appId | string | YES | - | manifest.json 中应用appid。 |
appLanguage | string | YES | - | 应用设置的语言。 |
appName | string | YES | - | manifest.json 中应用名称。 |
appVersion | string | YES | - | manifest.json 中应用版本名称。 |
appVersionCode | string | YES | - | manifest.json 中应用版本名号。 |
brand | string | YES | - | 手机品牌。 |
browserName | string | YES | - | 浏览器名称。App 端是系统 webview 的名字,比如 wkwebview、chrome。小程序端为空 |
browserVersion | string | YES | - | 浏览器版本、webview 版本。 |
deviceId | string | YES | - | 设备 ID |
deviceBrand | string | YES | - | 设备品牌。如:apple 、huawei 。 |
deviceModel | string | YES | - | 设备型号 |
deviceType | string | YES | - | 设备类型。phone 、pad 、pc |
devicePixelRatio | number | YES | - | 设备像素比 |
deviceOrientation | string | YES | - | 设备方向。如:竖屏 portrait 、横屏 landscape - portrait: 竖屏 - landscape: 横屏 |
language | string | YES | - | 程序设置的语言 |
osName | string | YES | - | ios、android、windows、mac、linux |
osVersion | string | YES | - | 操作系统版本。如 ios 版本,andriod 版本 |
osLanguage | string | YES | - | 操作系统语言 |
pixelRatio | number | YES | - | 设备像素比 |
platform | string | YES | - | 客户端平台 |
screenWidth | number | YES | - | 屏幕宽度 |
screenHeight | number | YES | - | 屏幕高度 |
statusBarHeight | number | YES | - | 状态栏的高度 |
system | string | YES | - | 操作系统版本 |
safeArea | SafeArea | YES | - | 在竖屏正方向下的安全区域 |
safeAreaInsets | SafeAreaInsets | YES | - | 在竖屏正方向下的安全区域插入位置 |
ua | string | YES | - | 用户标识。小程序端为空 |
uniCompileVersion | string | YES | - | uni 编译器版本 |
uniPlatform | string | YES | - | uni-app 运行平台。如:app 、mp-weixin 、web |
uniRuntimeVersion | string | YES | - | uni 运行时版本 |
uniCompileVersionCode | number | YES | - | uni 编译器版本号 |
uniRuntimeVersionCode | number | YES | - | uni 运行时版本号 |
version | string | YES | - | 引擎版本号。已废弃,仅为了向下兼容保留 |
romName | string | YES | - | rom 名称。Android 部分机型获取不到值。iOS 恒为 ios |
romVersion | string | YES | - | rom 版本号。Android 部分机型获取不到值。iOS 恒为 ios 版本号 |
windowWidth | number | YES | - | 可使用窗口宽度 |
windowHeight | number | YES | - | 可使用窗口高度 |
windowTop | number | YES | - | 可使用窗口的顶部位置 |
oaid | string | NO | - | oaid |
osAndroidAPILevel | number | NO | - | Android 系统API库的版本。 |
SafeArea Values
name | type | optinal | default | description |
left | number | YES | - | 安全区域左上角横坐标 |
right | number | YES | - | 安全区域右下角横坐标 |
top | number | YES | - | 安全区域左上角纵坐标 |
bottom | number | YES | - | 安全区域右下角纵坐标 |
width | number | YES | - | 安全区域的宽度,单位逻辑像素 |
height | number | YES | - | 安全区域的高度,单位逻辑像素 |
SafeAreaInsets Values
name | type | optinal | default | description |
left | number | YES | - | 安全区域左侧插入位置 |
right | number | YES | - | 安全区域右侧插入位置 |
top | number | YES | - | 安全区顶部插入位置 |
bottom | number | YES | - | 安全区域底部插入位置 |
GetSystemInfoResult Compatibility
| Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
oaid | 4.4 | √ | √ | x | x | x |
osAndroidAPILevel | 4.4 | √ | √ | x | x | x |
getSystemInfo Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
4.4 | √ | 3.9+ | 9.0 | √ | x |
See also
getSystemInfo
Related Bug
uni.getSystemInfoSync()
同步获取系统信息
Return value
GetSystemInfoResult Values
name | type | optinal | default | description |
SDKVersion | string | YES | - | 客户端基础库版本 |
appId | string | YES | - | manifest.json 中应用appid。 |
appLanguage | string | YES | - | 应用设置的语言。 |
appName | string | YES | - | manifest.json 中应用名称。 |
appVersion | string | YES | - | manifest.json 中应用版本名称。 |
appVersionCode | string | YES | - | manifest.json 中应用版本名号。 |
brand | string | YES | - | 手机品牌。 |
browserName | string | YES | - | 浏览器名称。App 端是系统 webview 的名字,比如 wkwebview、chrome。小程序端为空 |
browserVersion | string | YES | - | 浏览器版本、webview 版本。 |
deviceId | string | YES | - | 设备 ID |
deviceBrand | string | YES | - | 设备品牌。如:apple 、huawei 。 |
deviceModel | string | YES | - | 设备型号 |
deviceType | string | YES | - | 设备类型。phone 、pad 、pc |
devicePixelRatio | number | YES | - | 设备像素比 |
deviceOrientation | string | YES | - | 设备方向。如:竖屏 portrait 、横屏 landscape - portrait: 竖屏 - landscape: 横屏 |
language | string | YES | - | 程序设置的语言 |
osName | string | YES | - | ios、android、windows、mac、linux |
osVersion | string | YES | - | 操作系统版本。如 ios 版本,andriod 版本 |
osLanguage | string | YES | - | 操作系统语言 |
pixelRatio | number | YES | - | 设备像素比 |
platform | string | YES | - | 客户端平台 |
screenWidth | number | YES | - | 屏幕宽度 |
screenHeight | number | YES | - | 屏幕高度 |
statusBarHeight | number | YES | - | 状态栏的高度 |
system | string | YES | - | 操作系统版本 |
safeArea | SafeArea | YES | - | 在竖屏正方向下的安全区域 |
safeAreaInsets | SafeAreaInsets | YES | - | 在竖屏正方向下的安全区域插入位置 |
ua | string | YES | - | 用户标识。小程序端为空 |
uniCompileVersion | string | YES | - | uni 编译器版本 |
uniPlatform | string | YES | - | uni-app 运行平台。如:app 、mp-weixin 、web |
uniRuntimeVersion | string | YES | - | uni 运行时版本 |
uniCompileVersionCode | number | YES | - | uni 编译器版本号 |
uniRuntimeVersionCode | number | YES | - | uni 运行时版本号 |
version | string | YES | - | 引擎版本号。已废弃,仅为了向下兼容保留 |
romName | string | YES | - | rom 名称。Android 部分机型获取不到值。iOS 恒为 ios |
romVersion | string | YES | - | rom 版本号。Android 部分机型获取不到值。iOS 恒为 ios 版本号 |
windowWidth | number | YES | - | 可使用窗口宽度 |
windowHeight | number | YES | - | 可使用窗口高度 |
windowTop | number | YES | - | 可使用窗口的顶部位置 |
oaid | string | NO | - | oaid |
osAndroidAPILevel | number | NO | - | Android 系统API库的版本。 |
SafeArea Values
name | type | optinal | default | description |
left | number | YES | - | 安全区域左上角横坐标 |
right | number | YES | - | 安全区域右下角横坐标 |
top | number | YES | - | 安全区域左上角纵坐标 |
bottom | number | YES | - | 安全区域右下角纵坐标 |
width | number | YES | - | 安全区域的宽度,单位逻辑像素 |
height | number | YES | - | 安全区域的高度,单位逻辑像素 |
SafeAreaInsets Values
name | type | optinal | default | description |
left | number | YES | - | 安全区域左侧插入位置 |
right | number | YES | - | 安全区域右侧插入位置 |
top | number | YES | - | 安全区顶部插入位置 |
bottom | number | YES | - | 安全区域底部插入位置 |
GetSystemInfoResult Compatibility
| Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
oaid | 4.4 | √ | √ | x | x | x |
osAndroidAPILevel | 4.4 | √ | √ | x | x | x |
getSystemInfoSync Compatibility
Android version | Android uni-app | Android uni-app-x | iOS version | iOS uni-app | iOS uni-app-x |
4.4 | √ | 3.9+ | 9.0 | √ | x |
See also
getSystemInfoSync
Related Bug
Example
hello uni-app x
General type
GeneralCallbackResult
name | type | optinal | default | description |
errMsg | string | YES | - | 错误信息 |