Getting Started
Copia un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-calendar`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/calendar/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installare
Sezione intitolata “Installazione”Puoi utilizzare la nostra configurazione assistita dall'IA per installare il plugin. Aggiungi le Capgo competenze al tuo strumento di AI utilizzando il seguente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsUsa poi il seguente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-calendar` plugin in my project.Se preferisci l'installazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche per la piattaforma riportate di seguito:
npm install @capgo/capacitor-calendarnpx cap syncImpostazione iOS
Sezione intitolata “Configurazione iOS”Aggiungi le descrizioni di utilizzo che il tuo app necessita per ios/App/App/Info.plist:
<key>NSCalendarsUsageDescription</key><string>This app needs calendar access.</string><key>NSCalendarsWriteOnlyAccessUsageDescription</key><string>This app needs permission to add calendar events.</string><key>NSCalendarsFullAccessUsageDescription</key><string>This app needs permission to read and manage calendar events.</string><key>NSRemindersUsageDescription</key><string>This app needs reminders access.</string><key>NSRemindersFullAccessUsageDescription</key><string>This app needs permission to read and manage reminders.</string>iOS 17 e versioni successive distinguono tra accesso scritto e accesso completo al calendario. Includere le descrizioni dell'uso delle reminder solo se il tuo app chiama le API dei Reminder.
Riferimento di Apple: Migrazione ai livelli di accesso al calendario più recenti.
Configurazione Android
Sezione intitolata “Configurazione Android”Aggiungi le autorizzazioni del calendario che il tuo app necessita di android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.READ_CALENDAR" /><uses-permission android:name="android.permission.WRITE_CALENDAR" />Riferimento Android: Iscrizioni utente per il provider di calendario.
Autorizzazioni del Provider di Calendario
Richiedi l'accesso al Calendarioimport { CapacitorCalendar } from '@capgo/capacitor-calendar';
const permission = await CapacitorCalendar.requestFullCalendarAccess();
if (permission.result !== 'granted') { throw new Error('Calendar permission was not granted');}Per app che aggiungono solo eventi, utilizza requestWriteOnlyCalendarAccess()Per le app che aggiungono solo eventi, utilizza requestReadOnlyCalendarAccess().
Crea un Evento
Sezione intitolata “Crea Un Evento”Le date sono timestamp Unix in millisecondi.
import { CapacitorCalendar } from '@capgo/capacitor-calendar';
const startDate = Date.now() + 60 * 60 * 1000;const endDate = startDate + 60 * 60 * 1000;
const { id } = await CapacitorCalendar.createEvent({ title: 'Product review', location: 'Capgo', startDate, endDate, description: 'Created with @capgo/capacitor-calendar',});
console.log('Created event', id);Apri l'editor degli eventi nativi
Sezione intitolata “Apri l'editor degli eventi nativi”await CapacitorCalendar.createEventWithPrompt({ title: 'Planning session', location: 'Office', startDate: Date.now() + 24 * 60 * 60 * 1000, endDate: Date.now() + 25 * 60 * 60 * 1000,});On Android, prompt-based create and modify calls return null... e elencano gli eventi successivi se hai bisogno di trovare l'ID dell'evento creato.
Elenco gli eventi imminenti
Sezione intitolata “Elenco gli eventi imminenti”const now = Date.now();const oneWeekFromNow = now + 7 * 24 * 60 * 60 * 1000;
const { result: events } = await CapacitorCalendar.listEventsInRange({ from: now, to: oneWeekFromNow,});Scegli un calendario
Sezione intitolata “Scegli Un Calendario”const { result: calendars } = await CapacitorCalendar.listCalendars();const { result: defaultCalendar } = await CapacitorCalendar.getDefaultCalendar();
const calendarId = defaultCalendar?.id ?? calendars[0]?.id;selectCalendarsWithPrompt() Sono disponibile su iOS quando desideri visualizzare il picker del calendario del sistema.
Creare un avviso iOS
Sezione intitolata “Creare un avviso iOS”const permission = await CapacitorCalendar.requestFullRemindersAccess();
if (permission.result === 'granted') { await CapacitorCalendar.createReminder({ title: 'Send launch notes', dueDate: Date.now() + 2 * 24 * 60 * 60 * 1000, notes: 'Created with @capgo/capacitor-calendar', });}API delle notifiche sono disponibili solo per iOS.
Esempio di App
Sezione intitolata “Esempio di App”Il repository include un Capacitor esempio di app con controlli di autorizzazione, creazione di eventi, promemoria di eventi nativi, elenco dei calendari e elenco degli eventi in una data fascia oraria.
| IOS | Android |
|---|---|
![]() | ![]() |
Riferimento API
Sezione intitolata “API Reference”La completa API reference è mantenuta nel file README e nelle definizioni di tipo:

