메인 콘텐츠로 바로 가기
플러그인으로 돌아가기
@capgo/capacitor-android-usagestatsmanager
튜토리얼
github.com/Cap-go에서

사용 통계 관리자

앱 사용 시간과 화면 시간 분석을 추적하기 위해 안드로이드 사용 통계에 접근하세요.

__CAPGO_GUIDE__

__CAPGO_TUTORIAL__ on Usage Stats Manager

Using @capgo/capacitor-android-usagestatsmanager

Capacitor plugin for accessing Android UsageStatsManager API.

__CAPGO_INSTALL__

bun add @capgo/capacitor-android-usagestatsmanager
bunx cap sync

__CAPGO_EXPOSED__

  • queryAndAggregateUsageStats - __CAPGO_QUERY__ 및 __CAPGO_AGGR__ 사용자 통계를 지정된 시간 범위에 대해 집계합니다.
  • isUsageStatsPermissionGranted - 사용자 통계 허용 권한이 있는지 확인합니다.
  • openUsageStatsSettings - 사용자 통계 설정 화면을 열어줍니다. 사용자 통계 허용 권한을 부여할 수 있는 사용자 통계 설정 화면을 열어줍니다. 사용자 통계 허용 권한이 이미 부여되어도 항상 설정 화면을 열어줍니다.
  • queryAllPackages - __targetLanguage__에서 설치된 모든 패키지를 검색합니다. QUERY_ALL_PACKAGES 권한이 필요합니다.

예시 사용

queryAndAggregateUsageStats

__CAPGO_KEEP_0__의 사용 통계를 주어진 시간 범위에 대해 쿼리하고 집계합니다.

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

__CAPGO_KEEP_0__ 사용 통계 권한이 부여되었는지 확인합니다.

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

const { granted } = await UsageStatsManager.isUsageStatsPermissionGranted();
if (!granted) {
  await UsageStatsManager.openUsageStatsSettings();
}

openUsageStatsSettings

__CAPGO_KEEP_0__ 사용 통계 설정 화면을 열어주세요. 사용 통계 권한을 부여할 수 있는 __CAPGO_KEEP_0__ 사용 통계 설정 화면을 열어줍니다. 권한이 이미 부여되어도 항상 설정 화면을 열어줍니다.

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

await UsageStatsManager.openUsageStatsSettings();

queryAllPackages

__CAPGO_KEEP_0__에서 설치된 모든 패키지를 검색합니다. 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}`);
});

전체 참조