@capacitor/device
Device API(设备API)提供了设备内部信息,例如型号和操作系统版本,以及用户信息(如唯一标识符)。
安装
npm install @capacitor/device
npx cap sync
插件使用示例
import { Device } from '@capacitor/device';
const logDeviceInfo = async () => {
const info = await Device.getInfo();
console.log(info);
};
const logBatteryInfo = async () => {
const info = await Device.getBatteryInfo();
console.log(info);
};
API
getId()
getId() => Promise<DeviceId>
返回设备的唯一标识符。
返回值:
Promise<DeviceId>
自版本: 1.0.0
getInfo()
getInfo() => Promise<DeviceInfo>
返回底层设备/操作系统/平台的相关信息。
返回值:
Promise<DeviceInfo>
自版本: 1.0.0
getBatteryInfo()
getBatteryInfo() => Promise<BatteryInfo>
返回电池相关信息。
返回值:
Promise<BatteryInfo>
自版本: 1.0.0
getLanguageCode()
getLanguageCode() => Promise<GetLanguageCodeResult>
获取设备当前的语言区域代码。
返回值:
Promise<GetLanguageCodeResult>
自版本: 1.0.0
getLanguageTag()
getLanguageTag() => Promise<LanguageTag>
获取设备当前的语言区域标签。
返回值:
Promise<LanguageTag>
自版本: 4.0.0
Interfaces
DeviceId
属性 | 类型 | 描述 | 自版本 |
---|---|---|---|
identifier | string | 应用程序可用的设备标识符。在现代移动平台上,此标识符可能会发生变化,因为这些平台只允许每个应用有独立的安装ID。在iOS上,标识符是一个UUID,用于唯一标识应用程序供应商的设备(了解更多)。在Android 8+上,标识符是一个64位数字(以十六进制字符串表示),对于每个应用签名密钥、用户和设备的组合是唯一的(了解更多)。在Web上,会生成一个随机标识符并存储在localStorage中供后续调用使用。如果localStorage不可用,则 每次调用都会生成一个新的随机标识符。 | 1.0.0 |
DeviceInfo
属性 | 类型 | 描述 | 自版本 |
---|---|---|---|
name | string | 设备名称。例如,“John的iPhone”。此功能仅在iOS和Android 7.1及以上版本中受支持。在iOS 16+上,如果没有相应的授权,将返回通用设备名称。 | 1.0.0 |
model | string | 设备型号。例如,“iPhone13,4”。 | 1.0.0 |
platform | 'ios' | 'android' | 'web' | 设备平台(小写)。 | 1.0.0 |
operatingSystem |
| 设备的操作系统。 | 1.0.0 |
osVersion | string | 设备操作系统的版本。 | 1.0.0 |
iOSVersion | number | iOS版本号。仅在iOS上可用。多部分版本号会被压缩成一个两位数的整数,例如:"16.3.1" -> 160301 | 5.0.0 |
androidSDKVersion | number | Android SDK版本号。仅在Android上可用。 | 5.0.0 |
manufacturer | string | 设备制造商。 | 1.0.0 |
isVirtual | boolean | 应用是否在模拟器/仿真器中运行。 | 1.0.0 |
memUsed | number | 当前应用使用的近似内存,单位为字节。除以1048576可得到使用的MB数。 | 1.0.0 |
webViewVersion | string | WebView浏览器版本。 | 1.0.0 |
BatteryInfo
属性 | 类型 | 描述 | 自版本 |
---|---|---|---|
batteryLevel | number | 表示电池电量的百分比(0到1)。 | 1.0.0 |
isCharging | boolean | 设备是否正在充电。 | 1.0.0 |
GetLanguageCodeResult
属性 | 类型 | 描述 | 自版本 |
---|---|---|---|
value | string | 两位字符的语言代码。 | 1.0.0 |
LanguageTag
属性 | 类型 | 描述 | 自版本 |
---|---|---|---|
value | string | 返回格式良好的IETF BCP 47语言标签。 | 4.0.0 |
Type Aliases
OperatingSystem
'ios' | 'android' | 'windows' | 'mac' | 'unknown'