Langsung ke konten utama
@capgo/capacitor-app-intents UI & Sistem Open source

App Intents plugin Capacitor

Kirim frasa Siri, Shortcuts, Spotlight, quick action di Home Screen, dan katalog entitas App Intents dari Capacitor tanpa perlu rebuild web layer untuk setiap aksi

Instal

bun add @capgo/capacitor-app-intents bunx cap sync
npm, pnpm atau yarn
  • npm install @capgo/capacitor-app-intents
  • pnpm add @capgo/capacitor-app-intents
  • yarn add @capgo/capacitor-app-intents

Panduan

Cara menggunakan App Intents di Capacitor

Menggunakan @capgo/capacitor-app-intents

Antarmuka plugin Capgo App Intents.

Instal

bun add @capgo/capacitor-app-intents
bunx cap sync

bunx cap sync menyalin code native plugin ke dalam proyek native Anda. Jalankan kembali setiap kali melakukan upgrade plugin.

Impor

import { CapgoAppIntents } from '@capgo/capacitor-app-intents';

Sekilas tentang API

Metode Deskripsi
getPendingInvocations Mengembalikan pemanggilan yang diantrekan sebelum JavaScript siap.
removePendingInvocation Hapus satu pemanggilan yang tertunda setelah handler memprosesnya.
setEntityCatalog Simpan katalog entitas untuk string tipe tertentu.
setHomeScreenShortcutItems Ganti quick actions Home Screen (UIApplicationShortcutItems).
indexSpotlightEntities Buat indeks item Spotlight untuk domain aplikasi Anda.
removeSpotlightEntities Hapus item Spotlight berdasarkan ID.
performAppleSchemaTemplate Antrekan handler JavaScript untuk template skema Apple alpha.

Contoh

getPendingInvocations()

Mengembalikan pemanggilan yang diantrekan sebelum JavaScript siap.

import { CapgoAppIntents } from '@capgo/capacitor-app-intents';

const result = await CapgoAppIntents.getPendingInvocations();
console.log(result);

removePendingInvocation()

Hapus satu pemanggilan yang tertunda setelah handler memprosesnya.

import { CapgoAppIntents } from '@capgo/capacitor-app-intents';

await CapgoAppIntents.removePendingInvocation({ id: 'id-123' });

setEntityCatalog()

Simpan katalog entitas untuk string tipe tertentu.

import { CapgoAppIntents } from '@capgo/capacitor-app-intents';

await CapgoAppIntents.setEntityCatalog({
  type: 'type',
  entries: [
    {
      id: 'id-123',
      title: 'Hello from Capacitor',
    },
  ],
});

setHomeScreenShortcutItems()

Ganti quick actions Home Screen (UIApplicationShortcutItems).

import { CapgoAppIntents } from '@capgo/capacitor-app-intents';

await CapgoAppIntents.setHomeScreenShortcutItems({
  items: [
    {
      type: 'type',
      title: 'Hello from Capacitor',
    },
  ],
});

indexSpotlightEntities()

Buat indeks item Spotlight untuk domain aplikasi Anda.

import { CapgoAppIntents } from '@capgo/capacitor-app-intents';

await CapgoAppIntents.indexSpotlightEntities({
  entities: [
    {
      id: 'id-123',
      title: 'Hello from Capacitor',
      actionName: 'action',
    },
  ],
});

removeSpotlightEntities()

Hapus item Spotlight berdasarkan ID.

import { CapgoAppIntents } from '@capgo/capacitor-app-intents';

await CapgoAppIntents.removeSpotlightEntities({ ids: ['ids'] });

Tabel di atas mencantumkan 7 metode inti. Listener, helper versi, dan kontrak lengkap setiap metode didokumentasikan di repositori GitHub.

Mendengarkan event

addListener mengembalikan sebuah handle. Panggil handle.remove() saat layar di-unmount, atau CapgoAppIntents.removeAllListeners() untuk menghapus semua listener.

Referensi lengkap

FAQ

FAQ plugin App Intents

Bagaimana cara install plugin App Intents di aplikasi Capacitor?

Jalankan "bun add @capgo/capacitor-app-intents" (atau "npm install @capgo/capacitor-app-intents"), lalu jalankan "bunx cap sync" agar proyek iOS dan Android mendeteksi code native. Import dari "@capgo/capacitor-app-intents" di dalam code aplikasi Anda.

Apakah @capgo/capacitor-app-intents bisa digunakan dengan React, Vue, dan Angular?

Ya. App Intents adalah package Capacitor, jadi bisa digunakan dengan framework web apa pun yang berjalan di dalam Capacitor, termasuk Ionic, React, Vue, Angular, Svelte, dan JavaScript biasa.

Versi Capacitor mana yang didukung oleh @capgo/capacitor-app-intents?

Plugin Capgo mengikuti versi mayor Capacitor: gunakan versi mayor plugin yang sesuai dengan versi mayor Capacitor Anda (contoh: plugin v8 dengan Capacitor 8). Tabel kompatibilitas di README GitHub mencantumkan versi yang masih di-maintain.

Apakah @capgo/capacitor-app-intents gratis dan open source?

Ya. Source code bersifat publik di GitHub pada https://github.com/Cap-go/capacitor-app-intents/ dan package ini gratis untuk diinstall dari npm. Laporan bug dan pull request sangat kami terima.

Bisakah saya update code yang menggunakan App Intents tanpa review App Store?

Instalasi atau upgrade plugin akan mengubah native code, jadi butuh build store baru. Setelah itu, perubahan JavaScript, HTML, dan CSS yang memanggil plugin bisa langsung dikirim lewat live updates Capgo.

Rilis perubahan App Intents tanpa menunggu review aplikasi

Setelah plugin ada di build store Anda, live updates Capgo akan mengirim perubahan JavaScript, HTML, dan CSS ke pengguna dalam hitungan menit.

Mulai dengan Capgo