文档管理中心

@ohos.scan (扫描)

Phone20+PC/2in120+Tablet20+

该模块提供扫描框架的 JS API,支持扫描仪的发现与管理、扫描执行、设备事件监听等能力,适用于应用需要集成扫描仪进行文档数字化采集与设备管理的场景。

说明

本模块首批接口从API version 20开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

当前界面仅包含本模块的公开接口。

导入模块

import { scan } from '@kit.BasicServicesKit';

ScanErrorCode

Phone20+PC/2in120+Tablet20+

定义扫描错误码的枚举。

系统能力: SystemCapability.Print.PrintFramework

展开
名称 说明
SCAN_ERROR_NO_PERMISSION 201 无权限,请根据对应接口的权限要求申请所需权限,并在配置文件中声明。
SCAN_ERROR_NOT_SYSTEM_APPLICATION 202 非系统应用,请检查应用类型是否为系统应用。
SCAN_ERROR_INVALID_PARAMETER 401 无效参数,请检查参数类型和取值范围。
SCAN_ERROR_GENERIC_FAILURE 13100001 通用失败,请检查扫描服务运行状态并重试。
SCAN_ERROR_RPC_FAILURE 13100002 RPC失败,请检查RPC通信状态并重试。
SCAN_ERROR_SERVER_FAILURE 13100003 服务失败,请检查扫描服务是否正常运行并重试。
SCAN_ERROR_UNSUPPORTED 13100004 不支持的操作,请检查当前操作是否被扫描仪支持。
SCAN_ERROR_CANCELED 13100005 操作取消,请检查是否调用了cancelScan或操作被系统中断。
SCAN_ERROR_DEVICE_BUSY 13100006 设备忙,请等待设备空闲后重试。
SCAN_ERROR_INVALID 13100007 无效操作,请检查当前操作在扫描仪状态下是否有效。
SCAN_ERROR_JAMMED 13100008 卡纸,请清除扫描仪中的卡纸后重试。
SCAN_ERROR_NO_DOCS 13100009 缺纸,请在扫描仪中放入文档后重试。
SCAN_ERROR_COVER_OPEN 13100010 盖子打开,请关闭扫描仪盖子后重试。
SCAN_ERROR_IO_ERROR 13100011 I/O错误,请检查设备I/O连接状态并重试。
SCAN_ERROR_NO_MEMORY 13100012 内存不足,请释放系统内存后重试。

ConstraintType

Phone20+PC/2in120+Tablet20+

定义参数约束类型的枚举。

系统能力: SystemCapability.Print.PrintFramework

展开
名称 说明
SCAN_CONSTRAINT_NONE 0 无限制。
SCAN_CONSTRAINT_RANGE 1 范围限制。
SCAN_CONSTRAINT_WORD_LIST 2 数字列表。
SCAN_CONSTRAINT_STRING_LIST 3 字符串列表。

PhysicalUnit

Phone20+PC/2in120+Tablet20+

定义物理单位的枚举。

系统能力: SystemCapability.Print.PrintFramework

展开
名称 说明
SCAN_UNIT_NONE 0 无单位。
SCAN_UNIT_PIXEL 1 像素单位。
SCAN_UNIT_BIT 2 位单位。
SCAN_UNIT_MM 3 毫米单位。
SCAN_UNIT_DPI 4 DPI单位。
SCAN_UNIT_PERCENT 5 百分比单位。
SCAN_UNIT_MICROSECOND 6 微秒单位。

OptionValueType

Phone20+PC/2in120+Tablet20+

定义选项值类型的枚举。

系统能力: SystemCapability.Print.PrintFramework

展开
名称 说明
SCAN_TYPE_BOOL 0 布尔类型。
SCAN_TYPE_INT 1 整数类型。
SCAN_TYPE_FIXED 2 定点数类型。
SCAN_TYPE_STRING 3 字符串类型。

ScannerSyncMode

Phone20+PC/2in120+Tablet20+

定义扫描仪同步模式的枚举。

系统能力: SystemCapability.Print.PrintFramework

展开
名称 说明
UPDATE_STR 'update' 更新模式,表示扫描仪ID的变化。
DELETE_STR 'delete' 删除模式,表示扫描仪掉线。

ScannerDiscoveryMode

Phone20+PC/2in120+Tablet20+

定义扫描仪发现模式的枚举。

系统能力: SystemCapability.Print.PrintFramework

展开
名称 说明
TCP_STR 'TCP' 网络扫描仪的发现模式。
USB_STR 'USB' USB扫描仪的发现模式。

Range

Phone20+PC/2in120+Tablet20+

定义范围的接口。

系统能力: SystemCapability.Print.PrintFramework

属性:

展开
名称 类型 只读 可选 说明
minValue number 范围的最小值。
maxValue number 范围的最大值。
quantValue number 范围的量化值,表示范围内有效值之间的步长。

ScannerParameter

Phone20+PC/2in120+Tablet20+

定义扫描仪参数的接口。

系统能力: SystemCapability.Print.PrintFramework

属性:

展开
名称 类型 只读 可选 说明
optionName string 选项名称。
optionIndex number 选项索引。
optionTitle string 选项标题。
optionDesc string 选项描述。
optionType OptionValueType 选项值类型。
optionUnit PhysicalUnit 选项物理单位。
optionConstraintType ConstraintType 选项约束类型,决定有效的约束字段。当类型为SCAN_CONSTRAINT_NONE时无约束。
optionConstraintString string[] 选项字符串约束,仅在optionConstraintType为SCAN_CONSTRAINT_STRING_LIST时有效。默认为空数组。
optionConstraintInt number[] 选项整数约束,仅在optionConstraintType为SCAN_CONSTRAINT_WORD_LIST时有效。默认为空数组。
optionConstraintRange Range 选项范围约束,仅在optionConstraintType为SCAN_CONSTRAINT_RANGE时有效。

ScannerOptionValue

Phone20+PC/2in120+Tablet20+

定义扫描仪选项值的接口。当对应选项的约束类型为SCAN_CONSTRAINT_STRING_LIST时,选项取值应为optionConstraintString集合中的字符串。

系统能力: SystemCapability.Print.PrintFramework

属性:

展开
名称 类型 只读 可选 说明
valueType OptionValueType 值类型,决定应使用的值字段。
numValue number 数值,仅在valueType为SCAN_TYPE_INT或SCAN_TYPE_FIXED时有效。
strValue string 字符串值,仅在valueType为SCAN_TYPE_STRING时有效。
boolValue boolean 布尔值,仅在valueType为SCAN_TYPE_BOOL时有效。

PictureScanProgress

Phone20+PC/2in120+Tablet20+

定义图片扫描进度的接口。

系统能力: SystemCapability.Print.PrintFramework

属性:

展开
名称 类型 只读 可选 说明
progress number 当前进度百分比,取值范围为0~100。
pictureFd number 扫描图片的文件描述符。
isFinal boolean 是否是本次扫描的最后一张图片。true表示是最后一张图片,false表示不是最后一张图片。

ScannerDevice

Phone20+PC/2in120+Tablet20+

定义扫描仪设备的接口。

系统能力: SystemCapability.Print.PrintFramework

属性:

展开
名称 类型 只读 可选 说明
scannerId string 扫描仪的ID。
discoveryMode ScannerDiscoveryMode 扫描仪的发现模式,表示发现扫描仪的方式。
uniqueId string 扫描仪的唯一ID。
manufacturer string 扫描仪的制造商。
model string 扫描仪的型号。
deviceName string 扫描仪的设备名称。

ScannerSyncDevice

Phone20+PC/2in120+Tablet20+

定义扫描仪同步设备的接口。

系统能力: SystemCapability.Print.PrintFramework

属性:

展开
名称 类型 只读 可选 说明
scannerId string 扫描仪的ID。
discoveryMode ScannerDiscoveryMode 扫描仪的发现模式,表示发现扫描仪的方式。
uniqueId string 扫描仪的唯一ID。
syncMode ScannerSyncMode 同步模式,决定oldScannerId是否有效:当syncMode为"update"时oldScannerId有效,为"delete"时oldScannerId无效。
oldScannerId string 旧的扫描仪ID,仅在syncMode为"update"时有效,默认值为空字符串。

scan.init

Phone20+PC/2in120+Tablet20+

init(): Promise<void>

初始化扫描服务,必须在调用其它扫描接口前完成初始化。使用Promise异步回调。使用完毕后需调用exit()退出扫描服务,释放资源。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

返回值:

展开
类型 说明
Promise<void> Promise对象,初始化扫描服务成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

scan.init().then(() => {
    console.info('scan init success');
}).catch((error: BusinessError) => {
    console.error(`Failed to init scan. Code: ${error.code}, message: ${error.message}`);
});

scan.exit

Phone20+PC/2in120+Tablet20+

exit(): Promise<void>

退出扫描服务。使用Promise异步回调。扫描服务退出后,其它扫描方法将不可用,如需再次使用需重新调用init()。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

返回值:

展开
类型 说明
Promise<void> Promise对象,退出扫描服务成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

scan.exit().then(() => {
    console.info('scan exit success');
}).catch((error: BusinessError) => {
    console.error(`Failed to exit scan. Code: ${error.code}, message: ${error.message}`);
});

scan.startScannerDiscovery

Phone20+PC/2in120+Tablet20+

startScannerDiscovery(): Promise<void>

开始发现扫描仪,发现的扫描仪设备信息通过on('scanDeviceFound')事件回调通知。需在调用init()完成初始化后使用。使用Promise异步回调。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

返回值:

展开
类型 说明
Promise<void> Promise对象,开始发现扫描仪成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

scan.startScannerDiscovery().then(() => {
    console.info('start scanner discovery success');
}).catch((error: BusinessError) => {
    console.error(`Failed to start scanner discovery. Code: ${error.code}, message: ${error.message}`);
});

scan.openScanner

Phone20+PC/2in120+Tablet20+

openScanner(scannerId: string): Promise<void>

打开扫描仪。需在调用init()完成初始化后使用。使用Promise异步回调。在使用完毕后,需调用closeScanner()关闭扫描仪,释放资源。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 要打开的扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。

返回值:

展开
类型 说明
Promise<void> Promise对象,打开扫描仪成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
scan.openScanner(scannerId).then(() => {
    console.info('open scanner success');
}).catch((error: BusinessError) => {
    console.error(`Failed to open scanner. Code: ${error.code}, message: ${error.message}`);
});

scan.closeScanner

Phone20+PC/2in120+Tablet20+

closeScanner(scannerId: string): Promise<void>

关闭扫描仪。使用Promise异步回调。扫描仪关闭后,将不能再对该扫描仪执行参数获取、设置、扫描等操作。如需再次使用需重新调用openScanner()。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 要关闭的扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。

返回值:

展开
类型 说明
Promise<void> Promise对象,关闭扫描仪成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
scan.closeScanner(scannerId).then(() => {
    console.info('close scanner success');
}).catch((error: BusinessError) => {
    console.error(`Failed to close scanner. Code: ${error.code}, message: ${error.message}`);
});

scan.getScannerParameter

Phone20+PC/2in120+Tablet20+

getScannerParameter(scannerId: string): Promise<ScannerParameter[]>

获取扫描仪参数。使用Promise异步回调。必须在调用openScanner()打开扫描仪之后才能调用此方法。应用可通过此方法获取参数索引(optionIndex),用于setScannerParameter、setScanAutoOption和getScannerCurrentSetting等方法的调用。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。

返回值:

展开
类型 说明
Promise<ScannerParameter[]> Promise对象,获取扫描仪参数成功时resolve并返回扫描仪参数数组,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
scan.getScannerParameter(scannerId).then((parameters: scan.ScannerParameter[]) => {
    console.info('get scanner parameters success: ' + JSON.stringify(parameters));
}).catch((error: BusinessError) => {
    console.error(`Failed to get scanner parameters. Code: ${error.code}, message: ${error.message}`);
});

scan.setScannerParameter

Phone20+PC/2in120+Tablet20+

setScannerParameter(scannerId: string, optionIndex: number, value: ScannerOptionValue): Promise<void>

设置扫描仪参数。使用Promise异步回调。必须在调用openScanner()打开扫描仪之后才能调用此方法。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 要设置参数的扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。
optionIndex number 要设置的选项的索引,可通过getScannerParameter()获取。
value ScannerOptionValue 要设置的扫描仪选项值,包含值类型(valueType)及对应的数值(numValue)、字符串值(strValue)或布尔值(boolValue)。

返回值:

展开
类型 说明
Promise<void> Promise对象,设置扫描仪参数成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
let optionIndex: number = 1;
let value: scan.ScannerOptionValue = {
    valueType: scan.OptionValueType.SCAN_TYPE_INT,
    numValue: 100
};
scan.setScannerParameter(scannerId, optionIndex, value).then(() => {
    console.info('set scanner parameter success');
}).catch((error: BusinessError) => {
    console.error(`Failed to set scanner parameter. Code: ${error.code}, message: ${error.message}`);
});

scan.setScanAutoOption

Phone20+PC/2in120+Tablet20+

setScanAutoOption(scannerId: string, optionIndex: number): Promise<void>

设置扫描选项为自动模式,由扫描仪自动确定该选项的取值。使用Promise异步回调。必须在调用openScanner()打开扫描仪之后才能调用此方法。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。
optionIndex number 要设置为自动的选项的索引,可通过getScannerParameter()获取。

返回值:

展开
类型 说明
Promise<void> Promise对象,设置扫描选项为自动模式成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
let optionIndex: number = 1;
scan.setScanAutoOption(scannerId, optionIndex).then(() => {
    console.info('set scan auto option success');
}).catch((error: BusinessError) => {
    console.error(`Failed to set scan auto option. Code: ${error.code}, message: ${error.message}`);
});

scan.getScannerCurrentSetting

Phone20+PC/2in120+Tablet20+

getScannerCurrentSetting(scannerId: string, optionIndex: number): Promise<ScannerOptionValue>

获取当前扫描仪设置。使用Promise异步回调。必须在调用openScanner()打开扫描仪之后才能调用此方法。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 要获取当前设置的扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。
optionIndex number 要获取的选项的索引,可通过getScannerParameter()获取。

返回值:

展开
类型 说明
Promise<ScannerOptionValue> Promise对象,获取当前扫描仪设置成功时resolve并返回扫描仪选项值,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
let optionIndex: number = 1;
scan.getScannerCurrentSetting(scannerId, optionIndex).then((value: scan.ScannerOptionValue) => {
    console.info('get scanner current setting success: ' + JSON.stringify(value));
}).catch((error: BusinessError) => {
    console.error(`Failed to get scanner current setting. Code: ${error.code}, message: ${error.message}`);
});

scan.startScan

Phone20+PC/2in120+Tablet20+

startScan(scannerId: string, batchMode: boolean): Promise<void>

开始扫描。使用Promise异步回调。必须在调用openScanner()打开扫描仪之后才能调用此方法。扫描过程中可通过getPictureScanProgress()获取扫描进度;需要取消扫描时,可调用cancelScan()。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。
batchMode boolean 是否使用批处理模式。true表示使用批处理模式,可连续扫描多页文档;false表示不使用批处理模式,仅扫描单页。

返回值:

展开
类型 说明
Promise<void> Promise对象,开始扫描成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
let batchMode: boolean = true;
scan.startScan(scannerId, batchMode).then(() => {
    console.info('start scan success');
}).catch((error: BusinessError) => {
    console.error(`Failed to start scan. Code: ${error.code}, message: ${error.message}`);
});

scan.cancelScan

Phone20+PC/2in120+Tablet20+

cancelScan(scannerId: string): Promise<void>

取消扫描。使用Promise异步回调。必须在开始扫描之后才能调用此方法。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。

返回值:

展开
类型 说明
Promise<void> Promise对象,取消扫描成功时resolve,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
scan.cancelScan(scannerId).then(() => {
    console.info('cancel scan success');
}).catch((error: BusinessError) => {
    console.error(`Failed to cancel scan. Code: ${error.code}, message: ${error.message}`);
});

scan.getPictureScanProgress

Phone20+PC/2in120+Tablet20+

getPictureScanProgress(scannerId: string): Promise<PictureScanProgress>

获取图片扫描进度。使用Promise异步回调。必须在开始扫描之后才能调用此方法。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
scannerId string 扫描仪的ID,可以在startScannerDiscovery后通过scanDeviceFound回调获取。

返回值:

展开
类型 说明
Promise<PictureScanProgress> Promise对象,获取图片扫描进度成功时resolve并返回图片扫描进度信息,失败时reject。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';
import { BusinessError } from '@kit.BasicServicesKit';

let scannerId: string = 'scanner_001';
scan.getPictureScanProgress(scannerId).then((progress: scan.PictureScanProgress) => {
    console.info('get picture scan progress success: ' + JSON.stringify(progress));
}).catch((error: BusinessError) => {
    console.error(`Failed to get picture scan progress. Code: ${error.code}, message: ${error.message}`);
});

scan.on

Phone20+PC/2in120+Tablet20+

on(type: 'scanDeviceFound', callback: Callback<ScannerDevice>): void

注册扫描仪设备发现事件回调,当调用startScannerDiscovery发现新的扫描仪设备时会触发此事件。使用callback异步回调。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
type 'scanDeviceFound' 事件类型。
callback Callback<ScannerDevice> 回调函数,返回扫描仪设备发现信息。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';

scan.on('scanDeviceFound', (device: scan.ScannerDevice) => {
    console.info('scan device found: ' + JSON.stringify(device));
});

scan.off

Phone20+PC/2in120+Tablet20+

off(type: 'scanDeviceFound', callback?: Callback<ScannerDevice>): void

取消注册扫描仪设备发现事件回调。

需要权限: ohos.permission.PRINT

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
type 'scanDeviceFound' 事件类型。
callback Callback<ScannerDevice> 需要取消注册的回调函数。若不传入,则取消调用方所有已注册的回调。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';

let callback = (device: scan.ScannerDevice) => {
    console.info('scan device found: ' + JSON.stringify(device));
};
scan.on('scanDeviceFound', callback);
// 取消注册
scan.off('scanDeviceFound', callback);

scan.on

Phone20+PC/2in120+Tablet20+

on(type: 'scanDeviceSync', callback: Callback<ScannerSyncDevice>): void

注册扫描仪设备同步事件回调,当扫描仪设备状态发生变化(如扫描仪设备ID变更或掉线)时会触发此事件,通知应用同步维护扫描仪列表。使用callback异步回调。适用于应用需要持续跟踪扫描仪设备状态变化的场景,如扫描仪重新连接时更新本地设备信息。

需要权限: ohos.permission.MANAGE_PRINT_JOB

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
type 'scanDeviceSync' 事件类型。
callback Callback<ScannerSyncDevice> 回调函数,返回扫描仪设备同步信息。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';

scan.on('scanDeviceSync', (device: scan.ScannerSyncDevice) => {
    console.info('scan device sync: ' + JSON.stringify(device));
});

scan.off

Phone20+PC/2in120+Tablet20+

off(type: 'scanDeviceSync', callback?: Callback<ScannerSyncDevice>): void

取消注册扫描仪设备同步事件回调。

需要权限: ohos.permission.MANAGE_PRINT_JOB

系统能力: SystemCapability.Print.PrintFramework

参数:

展开
参数名 类型 必填 说明
type 'scanDeviceSync' 事件类型。
callback Callback<ScannerSyncDevice> 需要取消注册的回调函数。若不传入,则取消调用方所有已注册的回调。

错误码:

展开
错误码ID 错误信息
201 Permission denied.

示例:

import { scan } from '@kit.BasicServicesKit';

let callback = (device: scan.ScannerSyncDevice) => {
    console.info('scan device sync: ' + JSON.stringify(device));
};
scan.on('scanDeviceSync', callback);
// 取消注册
scan.off('scanDeviceSync', callback);
请输入您想要搜索的关键词