未验证 提交 4a5fc28a 编写于 作者: O openharmony_ci 提交者: Gitee

!18400 新增xts_device_attest的JS接口开发配套资料

Merge pull request !18400 from 罗键铭/master
# @ohos.deviceAttest (设备证明)
为了证明设备是OpenHarmony生态中的合法设备,设备证明模块会把设备信息通过云端进行一致性合法校验。
通过本模块接口,可查询设备在云端校验的结果。
> **说明:**
>
> - 本模块首批接口从API version 9开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
>
> - 本模块接口为系统接口。
## 导入模块
```js
import deviceAttest from '@ohos.deviceAttest';
```
## deviceAttest.getAttestStatus
getAttestStatus(callback: AsyncCallback<AttestResultInfo>) : void
获取端云校验结果的详细信息。使用callback异步回调。
**系统能力:** SystemCapability.XTS.DeviceAttest
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------------------------------------------- | ---- | ------------------------------------------------------------ |
| callback | AsyncCallback<[AttestResultInfo](#attestresultinfo)> | 是 | 回调函数。当获取端云校验结果的详细信息成功,error为undefined,result为获取到的[AttestResultInfo](#attestresultinfo);否则为错误对象。 |
**错误码:**
| 错误码ID | 错误信息 |
|----------|----------------------|
| 20000001 | system service exception |
**示例:**
```js
try {
deviceAttest.getAttestStatus((error, result) => {
if (typeof err === 'undefined') {
console.info("error code:" + error.code + " message:" + error.message);
} else {
console.info("auth:" + result.authResult + " software:" + result.softwareResult + " ticket:" + result.ticket);
console.info("versionIdResult:" + result.softwareResultDetail[0],
" patchlevelResult:" + result.softwareResultDetail[1],
" roothashResult:" + result.softwareResultDetail[2],
" PCIDResult:" + result.softwareResultDetail[3],
" reserver:" + result.softwareResultDetail[4]);
}
})
} catch (error) {
console.info("error code:" + error.code + " message:" + error.message);
}
```
## deviceAttest.getAttestStatus
getAttestStatus() : Promise<AttestResultInfo>
获取端云校验结果的详细信息。使用Promise异步回调。
**系统能力:** SystemCapability.XTS.DeviceAttest
**返回值:**
| 类型 | 说明 |
| ----------------------------------------------------- | ------------------------------- |
| Promise<[AttestResultInfo](#attestresultinfo)> | Promise对象,返回端云校验结果的详细信息。 |
**错误码:**
| 错误码ID | 错误信息 |
|----------|----------------------|
| 20000001 | system service exception |
**示例:**
```js
try {
deviceAttest.getAttestStatus().then((value) => {
console.info("auth:" + result.authResult + " software:" + result.softwareResult + " ticket:" + result.ticket);
console.info("versionIdResult:" + result.softwareResultDetail[0],
" patchlevelResult:" + result.softwareResultDetail[1],
" roothashResult:" + result.softwareResultDetail[2],
" PCIDResult:" + result.softwareResultDetail[3],
" reserver:" + result.softwareResultDetail[4]);
}).catch((error) => {
console.info("error code:" + error.code + " message:" + error.message);
});
} catch (error) {
console.info("error code:" + error.code + " message:" + error.message);
}
```
## deviceAttest.getAttestStatusSync
getAttestStatusSync() : AttestResultInfo
以同步方式获取端云校验结果的详细信息。
**系统能力:** SystemCapability.XTS.DeviceAttest
**返回值:**
| 类型 | 说明 |
| ----------------------------------------------------- | ------------------------------- |
| [AttestResultInfo](#attestresultinfo) | 返回端云校验结果的详细信息。 |
**错误码:**
| 错误码ID | 错误信息 |
|----------|----------------------|
| 20000001 | system service exception |
**示例:**
```js
try {
let attestResultInfo = deviceAttest.getAttestStatusSync();
console.info("auth:" + result.authResult + " software:" + result.softwareResult + " ticket:" + result.ticket);
console.info("versionIdResult:" + result.softwareResultDetail[0],
" patchlevelResult:" + result.softwareResultDetail[1],
" roothashResult:" + result.softwareResultDetail[2],
" PCIDResult:" + result.softwareResultDetail[3],
" reserver:" + result.softwareResultDetail[4]);
} catch (error) {
console.info("error code:" + error.code + " message:" + error.message);
}
```
## AttestResultInfo
端云校验结果的详细信息。
**系统能力:** SystemCapability.XTS.DeviceAttest
| 名称 | 类型 | 可读 | 可写 | 说明 |
| --------------------- | --------------------- | ---- | ---- | ---------------------- |
| authResult | number | 是 | 否 | 设备硬件信息校验结果。 |
| softwareResult | number | 是 | 否 | 设备软件信息校验结果。 |
| softwareResultDetail | Array&lt;number&gt; | 是 | 否 | 设备软件信息校验结果详细说明<br/> - softwareResultDetail[0]:版本Id的校验结果;<br/>- softwareResultDetail[1]:安全补丁标签的校验结果;<br/>- softwareResultDetail[2]:版本Hash的校验结果;<br/>- softwareResultDetail[3]:系统能力集合的校验结果;<br/>- softwareResultDetail[4]:保留位。 |
| ticket | string | 是 | 否 | 云侧下发的软证书。<br/>设备硬件信息校验结果通过后有值;校验结果失败,该值为空 |
> **说明:**
>
> - 设备硬件信息和设备软件信息的校验结果返回值有-2、-1、0。-2表示未认证,-1表示认证失败,0表示认证通过。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册