Memulai
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/id/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.
Instalasi
Section titled “Instalasi”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 syncKonfigurasi Platform
Section titled “Konfigurasi Platform”Android
Section titled “Android”Tambahkan izin yang diperlukan ke android/app/src/main/AndroidManifest.xml Anda:
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" /><uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />Contoh Penggunaan
Section titled “Contoh Penggunaan”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);Referensi API
Section titled “Referensi API”isUsageStatsPermissionGranted()
Section titled “isUsageStatsPermissionGranted()”isUsageStatsPermissionGranted() => Promise<{ granted: boolean }>Periksa apakah izin PACKAGE_USAGE_STATS diberikan.
Mengembalikan: Promise<{ granted: boolean }>
openUsageStatsSettings()
Section titled “openUsageStatsSettings()”openUsageStatsSettings() => Promise<void>Buka halaman pengaturan sistem untuk memberikan izin statistik penggunaan.
queryAndAggregateUsageStats(options)
Section titled “queryAndAggregateUsageStats(options)”queryAndAggregateUsageStats(options: UsageStatsOptions) => Promise<UsageStatsResult>Query statistik penggunaan terperinci untuk aplikasi yang terinstal.
| Param | Type |
|---|---|
options | UsageStatsOptions |
Mengembalikan: Promise<UsageStatsResult>
queryAllPackages()
Section titled “queryAllPackages()”queryAllPackages() => Promise<PackagesResult>Dapatkan informasi tentang semua paket yang terinstal di perangkat.
Mengembalikan: Promise<PackagesResult>
Interface
Section titled “Interface”UsageStatsOptions
Section titled “UsageStatsOptions”| Prop | Type | Description |
|---|---|---|
intervalType | number | Tipe interval (0=DAILY, 1=WEEKLY, 2=MONTHLY, dll.) |
startTime | number | Waktu mulai dalam milidetik |
endTime | number | Waktu akhir dalam milidetik |
UsageStatsResult
Section titled “UsageStatsResult”Berisi data statistik penggunaan untuk setiap aplikasi:
- Waktu penggunaan dan frekuensi aplikasi
- Waktu pertama dan terakhir digunakan
- Total waktu di foreground
- Jumlah peluncuran
PackagesResult
Section titled “PackagesResult”Berisi informasi tentang paket yang terinstal:
- Nama paket dan versi
- Waktu instalasi
- Label dan ikon aplikasi
- Aplikasi sistem vs pengguna
Penanganan Izin
Section titled “Penanganan Izin”Plugin memerlukan izin khusus yang tidak dapat diberikan melalui permintaan izin runtime normal:
- PACKAGE_USAGE_STATS: Memungkinkan akses ke statistik penggunaan
- QUERY_ALL_PACKAGES: Diperlukan untuk informasi paket (Android 11+)
Pengguna harus memberikan izin ini secara manual melalui pengaturan sistem. Gunakan openUsageStatsSettings() untuk mengarahkan pengguna ke halaman pengaturan yang sesuai.
Praktik Terbaik
Section titled “Praktik Terbaik”- Selalu periksa status izin sebelum query statistik penggunaan
- Tangani penolakan izin dengan baik dengan pesan yang ramah pengguna
- Pertimbangkan privasi pengguna saat mengumpulkan data penggunaan
- Implementasikan praktik penanganan dan penyimpanan data yang tepat
- Ikuti kebijakan Google Play untuk pengumpulan data penggunaan
Kasus Penggunaan
Section titled “Kasus Penggunaan”- Aplikasi kesejahteraan digital: Pantau waktu layar dan penggunaan aplikasi
- Kontrol orang tua: Lacak penggunaan perangkat anak-anak
- Aplikasi produktivitas: Analisis pola kerja dan waktu fokus
- Analitik: Pahami perilaku pengguna dan keterlibatan aplikasi