第一部分第二部分第三部分 中,我们介绍了 macOS 原生应用的集成方案。今天,我们带来 macOS 模块的第四部分,Airport、词典、无边记、帮助查看器和打印机等多个功能。

作为 macOS 用户或开发者,这些场景你可能也很熟悉:

  • 在网络管理工具中,提供「打开 Airport 工具」按钮,快速配置无线路由器。
  • 在阅读应用或文档平台,点击生词直接唤起词典应用查看释义。
  • 在协作平台,一键唤起无边记应用创建共享白板。
  • 在帮助文档系统,直接跳转到 macOS 帮助查看器的特定主题。
  • 在打印管理应用,快速添加网络打印机。

通过 Protocol Launcher 的 macOS 模块第四部分,你可以轻松实现这些工具和系统级的深度交互。


快速上手

确保你的项目中已安装:

npm install protocol-launcher

导入新增的 5 个功能模块:

// ✅ 推荐:按需加载 macOS 模块
import { 
  airport, 
  dictionary, 
  freeform, 
  helpViewer, 
  printer 
} from 'protocol-launcher/macos'

// 也可以从根包导入,但会包含所有应用模块
// import { macos } from 'protocol-launcher'

场景十九:打开 Airport 工具 (airport)

Airport 工具是 macOS 自带的网络管理工具,用于配置和管理 Airport 无线路由器。

import { airport } from 'protocol-launcher/macos'

// 打开机场实用工具
const url = airport()
// => 'apconfig://'

适用场景: 网络设备管理平台的快速入口、IT 支持工具的无线路由器配置引导、网络诊断应用的辅助工具调用。

场景二十:搜索词典 (dictionary)

词典应用支持直接打开,或指定搜索词查看释义。

import { dictionary } from 'protocol-launcher/macos'

// 打开词典应用
const url = dictionary()
// => 'dict://'

// 搜索特定词汇
const url = dictionary({
  term: 'hello',
})
// => 'dict://hello'

适用场景:

  • 电子书阅读器的生词查询功能
  • 语言学习应用的单词释义跳转
  • 文档平台的术语解释入口
  • 翻译工具的词典集成

场景二十一:打开无边记应用 (freeform)

无边记是 macOS 自带的协作白板应用,支持多人实时协作创建和编辑。

import { freeform } from 'protocol-launcher/macos'

// 打开无边记应用
const url = freeform()
// => 'freeform://'

适用场景:

  • 项目管理应用的头脑风暴入口
  • 团队协作平台的白板创建按钮
  • 教育平台的课堂互动工具
  • 设计评审应用的草图讨论功能

场景二十二:打开帮助查看器 (helpViewer)

帮助查看器是 macOS 自带的帮助系统,支持查看系统帮助和应用帮助文档。

import { helpViewer } from 'protocol-launcher/macos'

// 打开帮助查看器
const url = helpViewer()
// => 'x-apple-tips://'

// 打开特定帮助主题
const url = helpViewer({
  collection: 'WelcomeToMac',
})
// => 'x-apple-tips://open?collection=WelcomeToMac'

适用场景:

  • 应用内帮助文档的「在系统帮助中查看」链接
  • 新手引导的「查看更多帮助」按钮
  • 技术支持平台的帮助主题跳转
  • 企业培训系统的使用指南入口

注意: collection 参数使用 macOS 帮助系统定义的集合标识符。常用集合标识符包括:

  • WelcomeToMac - Mac 欢迎使用指南

场景二十三:添加打印机 (printer)

打印机功能支持打开打印机管理界面,或指定打印机主机地址快速添加网络打印机。

import { printer } from 'protocol-launcher/macos'

// 打开打印机管理界面
const url = printer()
// => 'ipp://'

// 添加网络打印机
const url = printer({
  host: '192.168.1.100',
})
// => 'ipp://192.168.1.100'

适用场景:

  • 企业 IT 管理平台的打印机批量部署
  • 办公室网络应用的快速打印配置
  • 打印管理应用的打印机添加入口
  • 设备管理系统的网络打印机注册

注意: host 参数支持 IP 地址(如 192.168.1.100)或主机名(如 printer.local)。协议使用 IPP(Internet Printing Protocol)。


为什么选择 Protocol Launcher?

  1. 类型安全与参数提示:TypeScript 的智能补全会确保你提供了正确的参数。比如 dictionaryterm 参数会提醒你输入搜索词,printerhost 参数会提示你输入有效的地址格式。

  2. 协议自动化处理:库内部会自动处理协议前缀和参数拼接逻辑。比如 helpViewer({ collection: 'WelcomeToMac' }) 会自动生成 x-apple-tips://open?collection=WelcomeToMac 格式。

  3. 一致的用户体验:通过封装复杂的协议逻辑,你可以专注于业务功能的实现,而不用担心不同 macOS 版本下协议触发的细微差异。

  4. 极致的按需加载 (Tree Shaking):采用了模块化设计,支持按需加载以最小化包体积:

    • 推荐方式:使用子路径导入(如 import { dictionary } from 'protocol-launcher/macos'),这样构建工具只会打包相关的代码。
    • 全量方式:也可以从根包导入(如 import { macos } from 'protocol-launcher'),建议生产环境始终使用按需加载。

🔗 相关链接

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐