Iniziare
Copy a setup prompt with the install steps and the full markdown guide for this plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-android-usagestatsmanager`
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/it/docs/plugins/android-usagestatsmanager/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.
Installazione
Section titled “Installazione”npm install @capgo/capacitor-android-usagestatsmanagernpx cap syncyarn add @capgo/capacitor-android-usagestatsmanagernpx cap syncpnpm add @capgo/capacitor-android-usagestatsmanagernpx cap syncbun add @capgo/capacitor-android-usagestatsmanagernpx cap syncConfigurazione Piattaforma
Section titled “Configurazione Piattaforma”Android
Section titled “Android”Aggiungi i permessi richiesti al tuo android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" /><uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />Esempio di Utilizzo
Section titled “Esempio di Utilizzo”import { AndroidUsageStatsManager } from '@capgo/capacitor-android-usagestatsmanager';
// Check if permission is grantedconst permissionResult = await AndroidUsageStatsManager.isUsageStatsPermissionGranted();if (!permissionResult.granted) { // Open settings to grant permission await AndroidUsageStatsManager.openUsageStatsSettings(); return;}
// Query usage statistics for the last 7 daysconst statsOptions = { intervalType: 0, // INTERVAL_DAILY startTime: Date.now() - (7 * 24 * 60 * 60 * 1000), // 7 days ago endTime: Date.now()};
const usageStats = await AndroidUsageStatsManager.queryAndAggregateUsageStats(statsOptions);console.log('Usage statistics:', usageStats);
// Get all installed packagesconst packages = await AndroidUsageStatsManager.queryAllPackages();console.log('Installed packages:', packages);Riferimento API
Section titled “Riferimento API”isUsageStatsPermissionGranted()
Section titled “isUsageStatsPermissionGranted()”isUsageStatsPermissionGranted() => Promise<{ granted: boolean }>Verifica se il permesso PACKAGE_USAGE_STATS è concesso.
Restituisce: Promise<{ granted: boolean }>
openUsageStatsSettings()
Section titled “openUsageStatsSettings()”openUsageStatsSettings() => Promise<void>Apri la pagina delle impostazioni di sistema per concedere il permesso delle statistiche di utilizzo.
queryAndAggregateUsageStats(options)
Section titled “queryAndAggregateUsageStats(options)”queryAndAggregateUsageStats(options: UsageStatsOptions) => Promise<UsageStatsResult>Interroga le statistiche di utilizzo dettagliate per le app installate.
| Param | Type |
|---|---|
options | UsageStatsOptions |
Restituisce: Promise<UsageStatsResult>
queryAllPackages()
Section titled “queryAllPackages()”queryAllPackages() => Promise<PackagesResult>Ottieni informazioni su tutti i pacchetti installati sul dispositivo.
Restituisce: Promise<PackagesResult>
Interfacce
Section titled “Interfacce”UsageStatsOptions
Section titled “UsageStatsOptions”| Prop | Type | Description |
|---|---|---|
intervalType | number | Tipo di intervallo (0=DAILY, 1=WEEKLY, 2=MONTHLY, ecc.) |
startTime | number | Tempo di inizio in millisecondi |
endTime | number | Tempo di fine in millisecondi |
UsageStatsResult
Section titled “UsageStatsResult”Contiene dati sulle statistiche di utilizzo per ogni app:
- Tempo di utilizzo e frequenza dell’app
- Prima e ultima volta utilizzata
- Tempo totale in primo piano
- Conteggio dei lanci
PackagesResult
Section titled “PackagesResult”Contiene informazioni sui pacchetti installati:
- Nome e versione del pacchetto
- Tempo di installazione
- Etichette e icone dell’app
- App di sistema vs app utente
Gestione dei Permessi
Section titled “Gestione dei Permessi”Il plugin richiede permessi speciali che non possono essere concessi tramite normali richieste di permesso di runtime:
- PACKAGE_USAGE_STATS: Consente l’accesso alle statistiche di utilizzo
- QUERY_ALL_PACKAGES: Richiesto per le informazioni sui pacchetti (Android 11+)
Gli utenti devono concedere manualmente questi permessi attraverso le impostazioni di sistema. Utilizza openUsageStatsSettings() per indirizzare gli utenti alla pagina delle impostazioni appropriata.
Migliori Pratiche
Section titled “Migliori Pratiche”- Verifica sempre lo stato del permesso prima di interrogare le statistiche di utilizzo
- Gestisci il rifiuto del permesso in modo elegante con messaggi user-friendly
- Considera la privacy dell’utente quando raccogli dati di utilizzo
- Implementa pratiche appropriate di gestione e archiviazione dei dati
- Segui le politiche di Google Play per la raccolta di dati di utilizzo
Casi d’Uso
Section titled “Casi d’Uso”- App di benessere digitale: Monitora il tempo di utilizzo dello schermo e l’uso delle app
- Controlli parentali: Traccia l’utilizzo del dispositivo dei bambini
- App di produttività: Analizza i modelli di lavoro e il tempo di concentrazione
- Analytics: Comprendi il comportamento degli utenti e il coinvolgimento con le app