@capawesome/capacitor-app-shortcuts

中文文档
8.0.3发布于 2026/10/09MITTypeScriptESM + CJS零依赖构建来源已验证近 30 天下载 8.7万

Capacitor插件来管理Android和iOS上的应用快捷方式和快速动作.

中文使用文档
文档目录29 节
  1. 使用大小写
  2. 兼容性
  3. 演示
  4. 安装
  5. 配置
  6. 实例
  7. iOS系统
  8. 使用量
  9. 创建或更新应用程序快捷键
  10. 获取全部应用程序快捷键
  11. 删除所有应用程序快捷键
  12. 点击快捷键
  13. API 密码
  14. 清除( c)
  15. 获取()
  16. 设置(...)
  17. 添加倾听器( 单击",...)
  18. 删除所有收听器( )
  19. 接口
  20. 财务问题
  21. 此插件支持哪些平台 ?
  22. 为什么点击器没有在iOS上调用?
  23. 我可以不写代码就定义应用快捷键吗?
  24. 我能在Android和iOS上使用不同的图标吗?
  25. 我能用这个插件吗? 有Ionic、React、Vue或Angular?
  26. 相关插件
  27. 通讯
  28. 更改日志
  29. 许可证

电容App快捷键插件

控制器插件,用于管理应用快捷方式和快速动作.

使用大小写

App快捷键插件一般用来让用户更快地从家用屏幕图标中直接访问您应用程序的关键部分,例如:

  • 快速行动:让用户直接跳入搜索,作曲或反馈等常用屏幕.
  • 动态快捷键:根据用户行为在运行时创建或更新快捷键,例如最近打开项目的快捷键.
  • 默认快捷键: 在您的 Capacitor 配置中定义一组默认快捷键而无需写入任何代码 .
  • 深层链接: 反应以快捷键单击 click 听取并引导用户到相应的屏幕.

兼容性

插件版本电容版本状态
8.x.x (英语)>=8.x.x积极支持

演示

可以找到一个实例 这里。 。 。 .

机器人iOS系统

安装

你可以用我们的 AI 辅助设置 以安装插件. 添加数据 超级技能 至您的 AI 工具,使用以下命令:

npx skills add capawesome-team/skills --skill capacitor-plugins

然后使用下列提示:

 Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-app-shortcuts` plugin in my project.

如果你喜欢 手动设置,通过运行下列命令来安装插件:

npm install @capawesome/capacitor-app-shortcuts
npx cap sync

配置

Prop类型说明自兹
shortcutsShortcut[]默认设置的应用快捷键列表 。 仅在Android和iOS上提供.7.2.0 联合国

实例

单位 capacitor.config.json数字 :

{
  "plugins": {
    "AppShortcuts": {
      "shortcuts": [{ id: 'feedback', title: 'Feedback' }]
    }
  }
}

单位 capacitor.config.ts数字 :

/// <reference types="@capawesome/capacitor-app-shortcuts" />

import { CapacitorConfig } from '@capacitor/cli';

const config: CapacitorConfig = {
  plugins: {
    AppShortcuts: {
      shortcuts: [{ id: 'feedback', title: 'Feedback' }],
    },
  },
};

export default config;

iOS系统

如果您的应用程序使用 UIScene 生命周期( 自 Capacitor 8. 5 起的默认), 请在您的应用程序中添加以下内容 : SceneDelegate.swift数字 :

+ import AppShortcutsPlugin

class SceneDelegate: UIResponder, UIWindowSceneDelegate {
    var window: UIWindow?

    func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
        guard let windowScene = scene as? UIWindowScene else { return }

        window = UIWindow(windowScene: windowScene)
        window?.rootViewController = CAPBridgeViewController()
        window?.makeKeyAndVisible()

+        if let shortcutItem = connectionOptions.shortcutItem {
+            NotificationCenter.default.post(name: NSNotification.Name(AppShortcutsPlugin.notificationName), object: nil, userInfo: [AppShortcutsPlugin.userInfoShortcutItemKey: shortcutItem])
+        }

        SceneDelegateProxy.shared.scene(scene, willConnectTo: session, options: connectionOptions)
    }

+    func windowScene(_ windowScene: UIWindowScene, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
+        NotificationCenter.default.post(name: NSNotification.Name(AppShortcutsPlugin.notificationName), object: nil, userInfo: [AppShortcutsPlugin.userInfoShortcutItemKey: shortcutItem])
+        completionHandler(true)
+    }

如果您的应用程序不使用 UIScene 生命周期,请在您的应用程序中添加以下内容: AppDelegate.swift 相反:

+ import AppShortcutsPlugin

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
+        if let shortcutItem = launchOptions?[.shortcutItem] as? UIApplicationShortcutItem {
+            NotificationCenter.default.post(name: NSNotification.Name(AppShortcutsPlugin.notificationName), object: nil, userInfo: [AppShortcutsPlugin.userInfoShortcutItemKey: shortcutItem])
+            return false
+        }
        return true
    }

+    func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
+        NotificationCenter.default.post(name: NSNotification.Name(AppShortcutsPlugin.notificationName), object: nil, userInfo: [AppShortcutsPlugin.userInfoShortcutItemKey: shortcutItem])
+        completionHandler(true)
+    }

如果您的工程仍然使用CocoaPods而不是 Swift 软件包管理器( SPM) , 导入 CapawesomeCapacitorAppShortcuts 而不是说 AppShortcutsPlugin数字 :

+ import CapawesomeCapacitorAppShortcuts

使用量

以下示例显示如何创建,获取,并删除应用程序快捷键并收听快捷键点击.

创建或更新应用程序快捷键

使用 set(...) 创建或更新应用程序快捷键的方法。 每个快捷键都需要一个独特的标识符和标题. 仅在Android和iOS上提供:

import { AppShortcuts } from '@capawesome/capacitor-app-shortcuts';

const set = async () => {
  await AppShortcuts.set({
    shortcuts: [
      {
        id: 'feedback',
        title: 'Feedback',
        description: 'Send us your feedback',
      },
      {
        id: 'rate',
        title: 'Rate',
        description: 'Rate our app',
      }
    ],
  });
};

获取全部应用程序快捷键

获取当前设置的应用快捷键列表 。 仅在Android和iOS上提供:

import { AppShortcuts } from '@capawesome/capacitor-app-shortcuts';

const get = async () => {
  const result = await AppShortcuts.get();
  return result.shortcuts;
};

删除所有应用程序快捷键

清除所有应用程序快捷键, 例如用户签名退出时 。 仅在Android和iOS上提供:

import { AppShortcuts } from '@capawesome/capacitor-app-shortcuts';

const clear = async () => {
  await AppShortcuts.clear();
};

点击快捷键

为您添加一个收听器 click 当用户点击一个应用程序快捷键时,例如导航到相应的屏幕时,事件可以作出反应。 在iOS上,这需要修改您的 AppDelegate.swift 说明 iOS 配置 指令:

import { AppShortcuts } from '@capawesome/capacitor-app-shortcuts';

const addListener = async () => {
  AppShortcuts.addListener('click', (event) => {
    console.log('Shortcut clicked:', event.shortcutId);
  });
};

API 密码

清除( c)

clear() => Promise<void>

删除所有应用快捷键 .

仅在Android和iOS上提供.

自: 6.0.0 (单位:千美元)


获取()

get() => Promise<GetResult>

获得所有应用快捷键.

仅在Android和iOS上提供.

回返情况: Promise<GetResult>

自: 6.0.0 (单位:千美元)


设置(...)

set(options: SetOptions) => Promise<void>

创建或更新应用程序快捷键 .

仅在Android和iOS上提供.

参数类型
optionsSetOptions

自: 6.0.0 (单位:千美元)


添加倾听器( 单击",...)

addListener(eventName: 'click', listenerFunc: (event: ClickEvent) => void) => Promise<PluginListenerHandle>

点击应用程序快捷键时调用 .

仅在Android和iOS上提供.

参数类型
eventName'click'
listenerFunc(event: ClickEvent) => void

回返情况: Promise<PluginListenerHandle>

自: 6.0.0 (单位:千美元)


删除所有收听器( )

removeAllListeners() => Promise<void>

删除此插件的所有听众 .

自: 6.0.0 (单位:千美元)


接口

获取恢复

Prop类型说明自兹
shortcutsShortcut[]App快捷键列表.6.0.0 (单位:千美元)

快捷键

Prop类型说明自兹
descriptionstring说明. 打开 机器人,当它有足够的空间时,发射器会显示这个而不是短标题.6.0.0 (单位:千美元)
idstring独一无二的标识符.6.0.0 (单位:千美元)
titlestring显示名.6.0.0 (单位:千美元)
iconstring | number要显示的图标 。 打开 机器人,图标可以是: R. 可画 enum(例如:. 17301547) - 代表可绘图资源名称的字符串(如:. "alert_dark_frame") - Base64被编码的图像字符串(例如. "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAASABIAAD/4QC...") (中文(简体) ). 打开 iOS系统,图标可以是以下之一: - UIApapplicationShortcutIcon. 中国植物物种信息数据库. 图标类型 enum(例如:. 6) - 一个系统符号名称(例如. star.fill- 资产目录中的图像资产名称.6.1.0 (中文(简体) )
androidIconstring | number在Android上显示的图标. 图标可以是下列之一: R. 可画 enum(例如:. 17301547) - 代表可绘图资源名称的字符串(如:. "alert_dark_frame") - Base64被编码的图像字符串(例如. "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAASABIAAD/4QC...") (中文(简体) ).7.2.0 联合国
iosIconstring | number在iOS上显示的图标. 图标可以是以下之一: UIApapplicationShortcutIcon. 中国植物物种信息数据库. 图标类型 enum(例如:. 6) - 一个系统符号名称(例如. star.fill- 资产目录中的图像资产名称.7.2.0 联合国

设置选项

Prop类型说明自兹
shortcutsShortcut[]App快捷键列表.6.0.0 (单位:千美元)

插件听筒

Prop类型
remove() => Promise<void>

点击事件

Prop类型说明自兹
shortcutIdstring点击的应用程序快捷键的独有标识符 .6.0.0 (单位:千美元)

财务问题

此插件支持哪些平台 ?

App快捷键是Android启动器和iOS家用屏幕的本土概念,因此插件只在Android和iOS上可用. 所有插件方法和 click 事件标记为仅在Android和iOS上可用 API 密码 节.

为什么点击器没有在iOS上调用?

在iOS上,插件依赖于您的应用程序的更改 AppDelegate.swift 将快捷键项目转发到插件。 请确定您已经应用了您在 iOS 配置 说明。 没有他们 click 事件从未交付.

我可以不写代码就定义应用快捷键吗?

是的,你可以使用这个 shortcuts 用于定义默认设置的应用程序快捷键列表的配置选项 。 见 配置 区域 capacitor.config.json 财务报告和审定财务报表 capacitor.config.ts。 。 。 .

我能在Android和iOS上使用不同的图标吗?

是的,你可以使用这个 androidIcon 财务报告和审定财务报表 iosIcon 属性以提供特定平台图标,或 icon 两个平台的属性。 在Android上,支持可绘制资源和Base64编码图像,而在iOS上,您可以使用系统符号名,资产目录图像,或者 UIApplicationShortcutIcon 类型。 注意在iOS上,图标和描述必须一起使用.

我能用这个插件吗? 有Ionic、React、Vue或Angular?

是的,插件是框架不可知的。 它在任意网络框架的Capacitor app中工作,包括有Angular,React,或Vue的Ionic,以及平版JavaScript等项目.

  • 应用图标:运行时更改应用程序图标.
  • 徽标: 访问并更新应用程序图标的徽标编号.

通讯

随时更新有关卡帕韦索姆、Capacitor和Ionic生态系统的最新消息和最新消息,因为我们 《卡帕索克通讯》。 。 。 .

更改日志

见 变动情况。 。 。 .

许可证

见 自由主义。 。 。 .

版本与发布记录

@capawesome/capacitor-app-shortcuts 共发布 14 个版本,首次发布于 2024/12/19;过去 12 个月发布了 5 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
8.0.3latest2026/10/0930 天前
8.0.22026/09/022 个月前
8.0.12026/02/198 个月前
8.0.02025/12/1710 个月前
7.0.0-dev.1765885034dev2025/12/1610 个月前
7.5.02025/06/021.4 年前

关于 @capawesome/capacitor-app-shortcuts 的常见问题

@capawesome/capacitor-app-shortcuts 是什么?

Capacitor插件来管理Android和iOS上的应用快捷方式和快速动作.

如何安装 @capawesome/capacitor-app-shortcuts?

在项目目录运行 npm install @capawesome/capacitor-app-shortcuts,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@capacitor/core(>=8.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@capawesome/capacitor-app-shortcuts 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@capawesome/capacitor-app-shortcuts 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@capawesome/capacitor-app-shortcuts 可以商用吗?

@capawesome/capacitor-app-shortcuts 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@capawesome/capacitor-app-shortcuts 的下载量有多少?

根据 npm 官方下载统计,@capawesome/capacitor-app-shortcuts 在 2026/10/09 – 2026/11/07 这 30 天内被下载 86,843 次,日均约 2,895 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@capawesome/capacitor-app-shortcuts 还在维护吗?

最新版本 8.0.3 发布于 2026/10/09(30 天前);至今共发布 14 个版本,其中过去 12 个月发布了 5 个;首次发布于 2024/12/19。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。