Blame view

泰额版/Food Labeling Management App UniApp/docs/native-fast-printer-custom-base.md 2.19 KB
59e51671   “wangming”   1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
  # native-fast-printer 自定义基座接入(Windows)
  
  本文用于当前项目一键接入 `native-fast-printer`,并打出可安装的 Android 自定义基座。
  
  ## 0. 现状确认
  
  本项目已具备以下前提:
  
  - `src/manifest.json` 已声明 `app-plus.nativePlugins.native-fast-printer`
  - `nativeplugins/native-fast-printer` 目录可用
  - 打印逻辑已在运行时检查插件可用性
  
  你只需要执行同步 + 在 HBuilderX 打自定义基座。
  
  ## 1. 同步插件到 uniapp 目录
  
  在仓库根目录执行:
  
  ```powershell
  powershell -ExecutionPolicy Bypass -File ".\美国版\Food Labeling Management App UniApp\scripts\sync-native-fast-printer.ps1"
  ```
  
  成功后会输出 `SRC AAR` / `DST AAR` 的大小与时间戳。
  
  ## 2. HBuilderX 打包自定义基座(Android)
  
  1. 用 HBuilderX 打开目录:`美国版/Food Labeling Management App UniApp`
  2. 进入 `发行 -> 原生App-云打包`
  3. 选择 `Android`
  4. 关键项:
     - 勾选 `自定义基座`
     - 勾选 `使用本地 nativeplugins`
     - 确认插件列表包含 `native-fast-printer`
  5. 开始打包并下载生成的 APK(自定义基座)
  6. 卸载设备旧包,安装这个新 APK
  
  ## 3. 安装后验收
  
  1. 打开蓝牙页,连接目标打印机
  2. 执行测试打印
  3. 进入正式打印页打印 1 张
  4. 若插件成功生效,不应再出现 `NATIVE_FAST_PRINTER_PLUGIN_NOT_FOUND`
  
  ## 4. 常见问题
  
  - 打包后仍提示插件不存在  
    多数是安装了旧包。请先卸载旧包再安装新 APK。
  
  - HBuilderX 未识别 native plugin  
    检查 `nativeplugins/native-fast-printer/package.json` 是否存在且 `id` 为 `native-fast-printer`
  
  - 需要更新原生代码  
    修改 `打印机安卓基座/native-fast-printer` 后,重新生成 AAR 并再次执行第 1 步同步。
  
  - **内置打印机走 `nativePrintTemplate`(快打)**(AAR ≥ **1.2.7**,调试里 `pluginVersion` 可见)  
    在 App 内选择 **Built-in**,驱动选 **Generic TSC**`generic-tsc`),且基座已集成 `printUposCommandBytes`(UPOS)。  
    此时 `printTemplate` 会在原生侧生成 TSC 指令后走 **UPOS 内置写出**,无需经典蓝牙;若机芯实际只支持 ESC/POS,请勿选 TSC,否则可能乱码。