指南
使用统计数据管理器的使用教程
使用@capgo/capacitor-android-usagestatsmanager
Capacitor插件,用于访问API的Android UsageStatsManager
安装
bun add @capgo/capacitor-android-usagestatsmanager
bunx cap sync
此插件暴露的内容
queryAndAggregateUsageStats- 为给定时间范围查询和聚合使用统计数据。isUsageStatsPermissionGranted- 检查是否已授予使用统计数据权限。openUsageStatsSettings- 打开使用统计数据设置屏幕。该屏幕将打开,允许用户授予使用统计数据权限。即使权限已被授予,该屏幕也将始终打开。queryAllPackages- 设备上查询所有安装的包。需要 QUERY_ALL_PACKAGES 权限。
示例用途
queryAndAggregateUsageStats
查询并聚合给定时间范围内的使用统计数据。
import { CapacitorUsageStatsManager } from '@capgo/capacitor-android-usagestatsmanager';
const oneDayAgo = Date.now() - 24 * 60 * 60 * 1000;
const now = Date.now();
const stats = await UsageStatsManager.queryAndAggregateUsageStats({
beginTime: oneDayAgo,
endTime: now
});
for (const [packageName, usageData] of Object.entries(stats)) {
console.log(`${packageName}: ${usageData.totalTimeInForeground}ms`);
}
isUsageStatsPermissionGranted
检查使用统计数据权限是否已授权。
import { CapacitorUsageStatsManager } from '@capgo/capacitor-android-usagestatsmanager';
const { granted } = await UsageStatsManager.isUsageStatsPermissionGranted();
if (!granted) {
await UsageStatsManager.openUsageStatsSettings();
}
openUsageStatsSettings
打开使用统计数据设置屏幕。该操作将打开使用统计数据设置屏幕,允许用户授权使用统计数据权限。即使权限已授权,该操作也会始终打开设置屏幕。
import { CapacitorUsageStatsManager } from '@capgo/capacitor-android-usagestatsmanager';
await UsageStatsManager.openUsageStatsSettings();
queryAllPackages
设备上查询所有安装的包。需要 QUERY_ALL_PACKAGES 权限。
import { CapacitorUsageStatsManager } from '@capgo/capacitor-android-usagestatsmanager';
const { packages } = await UsageStatsManager.queryAllPackages();
packages.forEach(pkg => {
console.log(`${pkg.appName} (${pkg.packageName}): v${pkg.versionName}`);
});
完整参考
- GitHub: https://github.com/Cap-go/capacitor-android-usagestatsmanager/
- 文档: /docs/plugins/android-usagestatsmanager/