和客户端相同,在进行请求交互中,后端会需要获取当前设备信息,此时需要使用应用上下文app与设备信息
应用版本号
const app = require('@system.app')app.getInfo().versionName //
- versionName:应用版本名称 (manifest.json中versionName配置项的值)
设备品牌、设备型号
const device = require('@system.device')
device.getInfo(data=>{
/*{model: 设备型号brand: 设备品牌
}*/
})
设备唯一标识
const device = require('@system.device')
device.getDeviceId(data=>{// {deviceId: ''} // 存在空的可能
}, err=>{// err
})
- deviceId:设备唯一标识。在 Android 上返回 IMEI 或 MEID; 在 Android Q 之后,除了华为手机返回 aaid(应用匿名设备标识符),其他厂商手机如果支持 oaid(匿名设备标识符)则返回 oaid,否则返回空值。
用户唯一标识
const device = require('@system.device')
device.getUserId(data=>{// {userId : 'xxx'}
}, err=>{// err
})
- userId: 用户唯一标识。在 Android 上返回 androidid
tips: 一般deviceId与userId存在一个即可(都为空可能会出现问题)