华为鸿蒙HarmonyOS已经发展到4.0,使用ArkTS作为开发语言。这篇文章结合Dynamsoft Service开发一个简单的鸿蒙应用,用来获取办公室里连接PC的扫描仪(惠普,富士通,爱普生,等),把文档扫描到手机里。
准备工作
-
Dynamsoft Service
-
在连接着扫描仪的电脑上安装Dynamsoft Service。安装包可以满足各种国产操作系统,比如统信UOS,麒麟Kylin OS等。支持的架构有:x86,x64,arm64,mips64el。支持的扫描仪协议包括TWAIN,WIA,SANE,ICA和eSCL(AirPrint)。下载地址:
- Windows: Dynamsoft-Service-Setup.msi
- macOS: Dynamsoft-Service-Setup.pkg
- Linux:
然后访问
http://127.0.0.1:18622/DWTAPI/Scanners
。正常安装可以获取到扫描仪列表。 -
在浏览器中打开
http://127.0.0.1:18625/
,把host从127.0.0.1
改成PC的局域网IP地址。比如192.168.8.72
,修改成功可以通过局域网IP地址访问192.168.8.72:18622/DWTAPI/Scanners
获取到扫描仪列表。 -
申请一个免费试用序列号,扫描文件的时候需要用。
-
-
DevEco Studio
下载地址:https://developer.harmonyos.com/cn/develop/deveco-studio/#download。安装前先安装Node.js,路径中不要带空格,否则安装DevEco Studio, 下载HarmonyOS SDK可能会失败。
鸿蒙程序开发
在DevEco Studio中新建工程。
在entry/src/main/module.json5
中添加网络权限:
{
"module": {
...
"abilities": [
...
],
"requestPermissions": [{
"name": "ohos.permission.INTERNET"}]
}
}
打开entry/src/main/etc/pages/Index.ets
,导入网络和图像模块:
import http from '@ohos.net.http';
import image from '@ohos.multimedia.image';
@Entry
@Component
struct Index {
@State deviceNames: SelectOption[] = [{
value: ''}]
@State displayImage: PixelMap = undefined
licenseKey: string = "LICENSE-KEY"; // https://www.dynamsoft.com/customer/license/trialLicense?product=dwt
host: string = 'http://192.168.8.72:18622'
devices = []
index: number = 0
build() {
Column() {
Row() {
Button('Get Devices')
.