Files
desktop-plugin/pubspec.yaml
T
dzc d475cac6ab feat: 向导内置 HiTi Mac 驱动一键安装(补齐计划 §3.2"驱动 dmg 放包内"设计)
- setup/driver_install.dart:检测已装(/Library/Printers/HiTi)+ 内置 dmg 定位
  (从 resolvedExecutable 反推 flutter_assets/assets/drivers/,缺失降级官网链接)
  + 静默安装(hdiutil 挂载→定位 pkg→osascript 提权 installer→finally detach;
  挂载点名带随机序号必须从 attach 输出解析)
- 向导第 2 步重做状态机:驱动未装 → "一键安装驱动(内置安装包)"按钮
  (安装中提示输管理员密码,失败显示原因);驱动已装但无队列 → 连接/添加队列
  引导;无内置 dmg 的构建回退官网链接
- assets/drivers/ 收驱动 dmg(.gitignore 不入库,打包脚本检查缺失并警告,
  当前从 card-printer-agent/dist 拷入 2.4.2 版,25MB)
- 实测:挂载/pkg 定位/detach 免密链路全通过;打包 47MB dmg 内含驱动,
  冒烟启动正常(服务已占主端口 38200);一键安装的提权弹窗待用户实测
2026-09-21 14:04:55 +08:00

112 lines
4.7 KiB
YAML

name: desktop_plugin
description: "饭卡打印站客户端(HiTi CS-2xx 证卡打印机本机助手,HTTP 协议与 card-printer-agent 一致)"
# The following line prevents the package from being accidentally published to
# pub.dev using `flutter pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number is used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
# In Windows, build-name is used as the major, minor, and patch parts
# of the product and file versions while build-number is used as the build suffix.
version: 1.0.0+1
environment:
sdk: ^3.7.2
# Dependencies specify other packages that your package needs in order to work.
# To automatically upgrade your package dependencies to the latest versions
# consider running `flutter pub upgrade --major-versions`. Alternatively,
# dependencies can be manually updated by changing the version numbers below to
# the latest version available on pub.dev. To see which dependencies have newer
# versions available, run `flutter pub outdated`.
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.8
# 本机 HTTP 协议服务(监听 127.0.0.1:38200-38202,与前端 cardPrinter.ts 约定一致)
shelf: ^1.4.1
shelf_router: ^1.1.4
# PNG 解码/编码(打印图层处理与测试卡生成)
image: ^4.3.0
# dart:ffi 辅助(Utf16 编解码与内存分配,Windows PavoApi 直打用)
ffi: ^2.1.0
# 后台托盘与窗口控制(关窗不退出、托盘常驻)
tray_manager: ^0.5.3
window_manager: ^0.5.2
shared_preferences: ^2.5.3
url_launcher: ^6.3.2
dev_dependencies:
flutter_test:
sdk: flutter
# The "flutter_lints" package below contains a set of recommended lints to
# encourage good coding practices. The lint set provided by the package is
# activated in the `analysis_options.yaml` file located at the root of your
# package. See that file for information about deactivating specific lint
# rules and activating additional ones.
flutter_lints: ^5.0.0
# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec
# The following section is specific to Flutter packages.
flutter:
# The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in
# the material Icons class.
uses-material-design: true
# 托盘图标(白底圆盘+logo,深浅菜单栏/任务栏均可见)与侧栏 logo
assets:
- assets/tray_icon_mac.png
- assets/tray_icon_win.png
- assets/logo.png
# HiTi Mac 驱动安装包(不进 git:放 assets/drivers/*.dmg 后重新打包;缺失时向导降级为官网链接)
- assets/drivers/
# To add assets to your application, add an assets section to your flutter
# configuration like this:
# assets:
# - images/a_dot_burr.jpeg
# - images/a_dot_ham.jpeg
# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/to/resolution-aware-images
# For details regarding adding assets from package dependencies, see
# https://flutter.dev/to/asset-from-package
# To add custom fonts to your application, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
# fonts:
# - family: Schyler
# fonts:
# - asset: fonts/Schyler-Regular.ttf
# - asset: fonts/Schyler-Italic.ttf
# style: italic
# - family: Trajan Pro
# fonts:
# - asset: fonts/TrajanPro.ttf
# - asset: fonts/TrajanPro_Bold.ttf
# weight: 700
#
# For details regarding fonts from package dependencies,
# see https://flutter.dev/to/font-from-package