Plugin for using Quick Actions in your Capacitor Apps.
Now it supports only on iOS/iPadOS 13+.
npm install capacitor-quick-actions
npx cap sync
Modify your AppDelegate.swift
:
- Add
import CapacitorQuickActions
to the top of the file. - Add
application function
to the bottom of the file:
func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
let handled = QuickActions.handleQuickAction(shortcutItem)
completionHandler(handled)
}
Example of the AppDelegate.swift
file available here.
// Import the plugin
import { QuickActions } from 'capacitor-quick-actions';
// Add buttons to the home screen
const addButtonsToHomeScreen = async () => {
await QuickActions.addQuickActions({
actions: [
{ id: "button1", title: 'Action1', iconName: 'house', description: 'Description1' },
{ id: "button2", title: 'Action2', iconName: '2' } // Description is optional
]
});
}
// Remove buttons from the home screen
const clearButtonsFromHomeScreen = async () => {
await QuickActions.clearQuickActions();
}
// Add Listener for the selected action
QuickActions.addListener('quickActionSelected', (data) => {
console.log('Quick Action selected:', data.type); // returns id of the selected action
});
To use icons in your quick actions provide the name of the icon from this app.
addQuickActions(options: { actions: QuickAction[]; }) => Promise<void>
Param | Type |
---|---|
options |
{ actions: QuickAction[]; } |
clearQuickActions() => Promise<void>
addListener(eventName: 'quickActionSelected', listenerFunc: (data: { type: string; }) => void) => PluginListenerHandle
Param | Type |
---|---|
eventName |
'quickActionSelected' |
listenerFunc |
(data: { type: string; }) => void |
Returns: PluginListenerHandle
Prop | Type |
---|---|
id |
string |
title |
string |
iconName |
string |
description |
string |
Prop | Type |
---|---|
remove |
() => Promise<void> |