export interface Uni { /** * getSystemInfo() * @description * 异步获取系统信息 * @param {GetSystemInfoOptions} options * @return {void} * @tutorial http://uniapp.dcloud.io/api/system/info?id=getsysteminfo * @uniPlatform * { * "app": { * "android": { * "osVer": "5.0", * "uniVer": "√", * "unixVer": "3.9+" * }, * "ios": { * "osVer": "12.0", * "uniVer": "√", * "unixVer": "4.11" * } * }, * "web": { * "uniVer": "√", * "unixVer": "4.0" * } * } * @example ```typescript uni.getSystemInfo({ success(e) { console.log("success :",e); }, complete(e) { console.log("complete :",e); } }) ``` */ getSystemInfo(options: GetSystemInfoOptions): void; /** * getSystemInfoSync() * @description * 同步获取系统信息 * @param {void} * @return {GetSystemInfoResult} * @tutorial http://uniapp.dcloud.io/api/system/info?id=getsysteminfosync * @uniPlatform * { * "app": { * "android": { * "osVer": "5.0", * "uniVer": "√", * "unixVer": "3.9+" * }, * "ios": { * "osVer": "12.0", * "uniVer": "√", * "unixVer": "4.11" * } * }, * "web": { * "uniVer": "√", * "unixVer": "4.0" * } * } * @example ```typescript uni.getSystemInfoSync() ``` */ getSystemInfoSync(): GetSystemInfoResult; /** * getWindowInfo() * @description * 同步获取窗口信息 * @param {void} * @return {GetWindowInfoResult} result * @tutorial http://uniapp.dcloud.io/api/system/getWindowInfo.html * @uniPlatform * { * "app": { * "android": { * "osVer": "5.0", * "uniVer": "√", * "unixVer": "3.9+" * }, * "ios": { * "osVer": "12.0", * "uniVer": "√", * "unixVer": "4.11" * } * }, * "web": { * "uniVer": "√", * "unixVer": "4.0" * } * } * @example ```typescript uni.getWindowInfo() ``` */ getWindowInfo(): GetWindowInfoResult; } export type GetSystemInfo = (options: GetSystemInfoOptions) => void; export type GetSystemInfoSync = () => GetSystemInfoResult; export type GetWindowInfo = () => GetWindowInfoResult; export type SafeArea = { /** * 安全区域左上角横坐标,单位为px */ left: number, /** * 安全区域右下角横坐标,单位为px */ right: number, /** * 安全区域左上角纵坐标,单位为px */ top: number, /** * 安全区域右下角纵坐标,单位为px */ bottom: number, /** * 安全区域的宽度,单位为px */ width: number, /** * 安全区域的高度,单位为px */ height: number }; export type SafeAreaInsets = { /** * 安全区域左侧插入位置,单位为px */ left: number, /** * 安全区域右侧插入位置,单位为px */ right: number, /** * 安全区顶部插入位置,单位为px */ top: number, /** * 安全区域底部插入位置,单位为px */ bottom: number }; export type GetSystemInfoResult = { /** * 客户端基础库版本 */ SDKVersion: string, /** * `manifest.json` 中应用appid。 */ appId: string, /** * 应用设置的语言。 */ appLanguage: string, /** * `manifest.json` 中应用名称。 */ appName: string, /** * `manifest.json` 中应用版本名称。 */ appVersion: string, /** * `manifest.json` 中应用版本名号。 */ appVersionCode: string, /** * 应用资源(wgt)的版本名称。 * * @uniPlatform * { * "app": { * "android": { * "osVer": "5.0", * "uniVer": "√", * "unixVer": "x" * }, * "ios": { * "osVer": "12.0", * "uniVer": "√", * "unixVer": "x" * } * } * } */ appWgtVersion?: string | null, /** * 手机品牌。 */ brand: string, /** * 浏览器名称。`App` 端是系统 webview 的名字,比如 wkwebview、chrome。小程序端为空 */ browserName: string, /** * 浏览器版本、webview 版本。 */ browserVersion: string, /** * 设备 ID */ deviceId: string, /** * 设备品牌。如:`apple`、`huawei`。 */ deviceBrand: string, /** * 设备型号 */ deviceModel: string, /** * 设备类型。 */ deviceType: 'phone' | 'pad' | 'tv' | 'watch' | 'pc' | 'undefined' | 'car' | 'vr' | 'appliance', /** * 设备像素比 */ devicePixelRatio: number, /** * 设备方向。 * @type 'portrait' | 'landscape' */ deviceOrientation: 'portrait' | 'landscape', /** * 程序设置的语言 */ language: string, /** * 手机型号 */ model: string, /** * 系统名称 */ osName: 'ios' | 'android' | 'mac' | 'windows' | 'linux', /** * 操作系统版本。如 ios 版本,andriod 版本 */ osVersion: string, /** * 操作系统语言 */ osLanguage: string, /** * 操作系统主题 * * @uniPlatform * { * "app": { * "android": { * "osVer": "5.0", * "uniVer": "√", * "unixVer": "√" * }, * "ios": { * "osVer": "12.0", * "uniVer": "√", * "unixVer": "4.11" * } * } * } */ osTheme?: 'light' | 'dark' | null, /** * 设备像素比 */ pixelRatio: number, /** * 客户端平台 */ platform: 'ios' | 'android' | 'mac' | 'windows' | 'linux', /** * 屏幕宽度,单位为px */ screenWidth: number, /** * 屏幕高度,单位为px */ screenHeight: number, /** * 状态栏的高度,单位为px */ statusBarHeight: number, /** * 操作系统版本 */ system: string, /** * 在竖屏正方向下的安全区域 */ safeArea: SafeArea, /** * 在竖屏正方向下的安全区域插入位置 */ safeAreaInsets: SafeAreaInsets, /** * 用户标识。小程序端为空 */ ua: string, /** * uni 编译器版本。 * @deprecated 已废弃,仅为了向下兼容保留 */ uniCompileVersion: string, /** * uni 编译器版本。 */ uniCompilerVersion: string, /** * uni-app 运行平台,与条件编译平台相同。 */ uniPlatform: 'app' | 'web' | 'mp-weixin' | 'mp-alipay' | 'mp-baidu' | 'mp-toutiao' | 'mp-lark' | 'mp-qq' | 'mp-kuaishou' | 'mp-jd' | 'mp-360' | 'quickapp-webview' | 'quickapp-webview-union' | 'quickapp-webview-huawei', /** * uni 运行时版本。 */ uniRuntimeVersion: string, /** * uni 编译器版本号。 * @deprecated 已废弃,仅为了向下兼容保留 */ uniCompileVersionCode: number, /** * uni 编译器版本号。 */ uniCompilerVersionCode: number, /** * uni 运行时版本号。 */ uniRuntimeVersionCode: number, /** * 引擎版本号。 * @deprecated 已废弃,仅为了向下兼容保留 */ version: string, /** * rom 名称。Android 部分机型获取不到值。iOS 恒为 `ios` */ romName: string, /** * rom 版本号。Android 部分机型获取不到值。iOS 为操作系统版本号(同 `osVersion`)。 */ romVersion: string, /** * 可使用窗口宽度,单位为px */ windowWidth: number, /** * 可使用窗口高度,单位为px */ windowHeight: number, /** * 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px */ windowTop: number, /** * 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px */ windowBottom: number, /** * Android 系统API库的版本。 * * @uniPlatform * { * "app": { * "android": { * "osVer": "5.0", * "uniVer": "√", * "unixVer": "√" * }, * "ios": { * "osVer": "x", * "uniVer": "x", * "unixVer": "x" * } * } * } */ osAndroidAPILevel?: number | null }; export type GetSystemInfoSuccessCallback = (result: GetSystemInfoResult) => void; type GetSystemInfoFail = UniError; type GetSystemInfoFailCallback = (result: GetSystemInfoFail) => void; export type GetSystemInfoComplete = any; export type GetSystemInfoCompleteCallback = (result: GetSystemInfoComplete) => void; export type GetSystemInfoOptions = { /** * 接口调用成功的回调函数 * @defaultValue null */ success?: GetSystemInfoSuccessCallback | null, /** * 接口调用失败的回调函数 * @defaultValue null */ fail?: GetSystemInfoFailCallback | null, /** * 接口调用结束的回调函数(调用成功、失败都会执行) * @defaultValue null */ complete?: GetSystemInfoCompleteCallback | null }; export type GetWindowInfoResult = { /** * 设备像素比 */ pixelRatio: number, /** * 屏幕宽度,单位为px */ screenWidth: number, /** * 屏幕高度,单位为px */ screenHeight: number, /** * 可使用窗口宽度,单位为px */ windowWidth: number, /** * 可使用窗口高度,单位为px */ windowHeight: number, /** * 状态栏的高度,单位为px */ statusBarHeight: number, /** * 内容区域距离顶部的距离(同CSS变量 `--window-top`),单位为px */ windowTop: number, /** * 内容区域距离底部的距离(同CSS变量 `--window-bottom`),单位为px */ windowBottom: number, /** * 在竖屏正方向下的安全区域 */ safeArea: SafeArea, /** * 在竖屏正方向下的安全区域插入位置 */ safeAreaInsets: SafeAreaInsets, /** * 窗口上边缘的 y 值,单位为px */ screenTop: number };