跳转至正文

使用统计管理器 Capacitor 插件

获取 Android 使用统计数据,用于追踪应用使用时长和屏幕时间分析

安装

bun add @capgo/capacitor-android-usagestatsmanager bunx cap sync
npm、pnpm 或 yarn
  • npm install @capgo/capacitor-android-usagestatsmanager
  • pnpm add @capgo/capacitor-android-usagestatsmanager
  • yarn add @capgo/capacitor-android-usagestatsmanager

指南

如何在 Capacitor 中使用 Usage Stats Manager

使用 @capgo/capacitor-android-usagestatsmanager

用于访问 Android UsageStatsManager API 的 Capacitor 插件。

安装

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 CapacitorUsageStatsManager.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 CapacitorUsageStatsManager.isUsageStatsPermissionGranted();
if (!granted) {
  await CapacitorUsageStatsManager.openUsageStatsSettings();
}

openUsageStatsSettings

打开使用统计设置界面。此操作会打开使用统计设置界面,用户可在其中授予使用统计权限。即使已授予该权限,也始终会打开此设置界面。

import { CapacitorUsageStatsManager } from '@capgo/capacitor-android-usagestatsmanager';

await CapacitorUsageStatsManager.openUsageStatsSettings();

queryAllPackages

查询设备上所有已安装的应用包。需要 QUERY_ALL_PACKAGES 权限。

import { CapacitorUsageStatsManager } from '@capgo/capacitor-android-usagestatsmanager';

const { packages } = await CapacitorUsageStatsManager.queryAllPackages();
packages.forEach(pkg => {
  console.log(`${pkg.appName} (${pkg.packageName}): v${pkg.versionName}`);
});

完整参考

从“使用 @capgo/capacitor-android-usagestatsmanager”继续

如果你正在使用 使用 @capgo/capacitor-android-usagestatsmanager 要规划 dashboard 和 API 操作,请将其连接到 @capgo/capacitor-android-usagestatsmanager 有关 @capgo/capacitor-android-usagestatsmanager 中的实现细节, 快速入门 有关“入门指南”中的实现细节, API 概览 关于 API Overview 中的实现细节, 简介 关于简介中的实现细节,以及 API 密钥 关于 API Keys 中的实现细节。

常见问题

Usage Stats Manager 插件常见问题

如何在 Capacitor 应用中安装 Usage Stats Manager 插件?

运行 "bun add @capgo/capacitor-android-usagestatsmanager"(或 "npm install @capgo/capacitor-android-usagestatsmanager"),然后运行 "bunx cap sync" 使 iOS 和 Android 项目同步原生 code。最后在你的 code 应用中从 "@capgo/capacitor-android-usagestatsmanager" 导入即可。

@capgo/capacitor-android-usagestatsmanager 是否支持 React、Vue 和 Angular?

支持。Usage Stats Manager 是一个 Capacitor 包,因此它支持任何在 Capacitor 中运行的 Web 框架,包括 Ionic、React、Vue、Angular、Svelte 以及原生 JavaScript。

@capgo/capacitor-android-usagestatsmanager 支持哪个版本的 Capacitor?

Capgo 插件遵循 Capacitor 的主版本号:请使用与 Capacitor 主版本号一致的插件主版本(例如插件 v8 对应 Capacitor 8)。GitHub README 中的兼容性表列出了仍在维护的版本。

@capgo/capacitor-android-usagestatsmanager 是免费开源的吗?

是的。code 源码已在 GitHub 公开,地址为 https://github.com/Cap-go/capacitor-android-usagestatsmanager/,且可以通过 npm 免费安装。欢迎提交 Bug 报告和 Pull Request。

我能否在无需经过 App Store 审核的情况下,更新使用了 Usage Stats Manager 的 code?

安装或升级插件会改动原生 code,因此需要重新做一次商店构建。之后,调用该插件的 JavaScript、HTML 和 CSS 改动就能通过 Capgo live updates 立即发布。

无需等待 App Store 审核,即可快速发布 Usage Stats Manager 的变更

只要插件已包含在你的商店版本中,Capgo live updates 就能在几分钟内把 JavaScript、HTML 和 CSS 的改动推送给用户。

开始使用 Capgo