@capacitor-community/volume-buttons
Capacitor community plugin to listen to hardware volume button presses
Maintainer | GitHub | Active |
---|---|---|
ryaa | ryaa | yes |
This plugins allows to listen for the events fired when the user presses the hardware volume up or down button of the device. An object that contains only one property is passed to the callback - see VolumeButtonsResult.
This plugin contains code derived from or inspired by https://github.com/CipherBitCorp/VolumeButtonHandler and https://github.com/thiagobrez/capacitor-volume-buttons plugins.
Features:
disableSystemVolumeHandler
on iOS platform - see VolumeButtonsOptions)NOTE: The plugin version 1.0.0 is compatible with Capacitor 5 which requires gradle version 8.0
Capacitor version | Plugin version |
---|---|
6.x | 6.x |
5.x | 1.x |
npm install @capacitor-community/volume-buttons
npx cap sync
Promise<GetIsWatchingResult>
**Since:** 1.0.1
--------------------
### watchVolume(...)
```typescript
watchVolume(options: VolumeButtonsOptions, callback: VolumeButtonsCallback) => PromiseVolumeButtonsOptions
|
| **`callback`** | VolumeButtonsCallback
|
**Returns:** Promise<string>
**Since:** 1.0.0
--------------------
### clearWatch()
```typescript
clearWatch() => Promiseboolean
| If the volume buttons are being watched. | 1.0.1 |
#### VolumeButtonsOptions
| Prop | Type | Description | Since |
| -------------------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- |
| **`disableSystemVolumeHandler`** | boolean
| This parameter can be used to disable the system volume handler (iOS only). If this is true, when up or down volume button is tapped, the system volume will always be reset to either the initial volume (the volume which was current when the volume buttons are started to be tracked/listened) or to 0.05 if the initial volume is less then 0.05 or to 0.95 if the initial volume is greater then 0.95. | 1.0.0 |
| **`suppressVolumeIndicator`** | boolean
| This parameter can be used to suppress/hide the system volume indicator (Android only, it is never shown on iOS already). If this is true, when up or down volume button is tapped, the system volume indicator will not be shown. The default value is false. | 1.0.2 |
#### VolumeButtonsResult
| Prop | Type | Description | Since |
| --------------- | --------------------------- | ---------------------------------------------------------------------- | ----- |
| **`direction`** | 'up' \| 'down'
| This indicates either the volume up or volume down button was pressed. | 1.0.0 |
### Type Aliases
#### VolumeButtonsCallback
(result: VolumeButtonsResult, err?: any): void
#### CallbackID
string
import { VolumeButtons } from '@capacitor-community/volume-buttons';
const options: VolumeButtonsOptions = {};
const callback: VolumeButtonsCallback = (result: VolumeButtonsResult, err?: any) => {
console.log('result', result);
};
if (this.platform.is('ios')) {
options.disableSystemVolumeHandler = true;
} else if (this.platform.is('android')) {
options.suppressVolumeIndicator = true;
}
await VolumeButtons.watchVolume(options, callback);
import { VolumeButtons } from '@capacitor-community/volume-buttons';
await VolumeButtons.clearWatch();