# @brighthustle/react-native-usage-stats-manager

Usage Stats Manager Plugin

## Installation

```sh
npm install @brighthustle/react-native-usage-stats-manager
```

## Android

Permission need to be added on AndroidManifest.xml

```xml

<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />

```

If Build Error on kotlin add kotlinVersion to the gradle.properties

```xml

kotlinVersion=1.8.10

```

## Usage

```js
import {
  EventFrequency,
  checkForPermission,
  queryUsageStats,
  showUsageAccessSettings,
} from '@brighthustle/react-native-usage-stats-manager';

Time needs to be in millisecond for function queryUsageStats

const startDateString = '2023-06-11T12:34:56';
const endDateString = '2023-07-11T12:34:56';

const startMilliseconds = new Date(startDateString).getTime();
const endMilliseconds = new Date(endDateString).getTime();

const result = await queryUsageStats(
      EventFrequency.INTERVAL_DAILY,
      startMilliseconds,
      endMilliseconds
    )
```

## Check Permission & Open Permission Activity

```js
checkForPermission().then((res: any) => {
  if (!res) {
    showUsageAccessSettings('');
  }
});
```

## Contributing

See the [contributing guide](CONTRIBUTING.md) to learn how to contribute to the repository and the development workflow.

## License

MIT

---

Made with [create-react-native-library](https://github.com/callstack/react-native-builder-bob)
