Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
aacf46d
feat(android-foreground-service): add notificationTapped listener for…
sizeak Mar 12, 2026
ae9058f
Deliver notification tap via intent extras instead of static method
sizeak Mar 12, 2026
503e905
Remove unused onNotificationTapped static method
sizeak Mar 12, 2026
6b42f22
Add comment explaining intent-based notification tap delivery
sizeak Mar 12, 2026
f832fe3
refactor(android-foreground-service): use direct activity PendingInte…
sizeak Mar 12, 2026
578fce9
feat(posthog): support reverse proxy host config (#797)
mirsella Mar 13, 2026
be3b49e
chore(release): publish (#798)
github-actions[bot] Mar 13, 2026
c7696ff
docs: update documentation of various packages
robingenz Mar 14, 2026
a614343
style: format
robingenz Mar 14, 2026
8284fc5
docs(live-update): update `Maintenance` section
robingenz Mar 16, 2026
bb83794
docs(accelerometer): update `README.md`
github-actions[bot] Mar 16, 2026
1e21df4
docs(audio-player): update `README.md`
github-actions[bot] Mar 16, 2026
f036651
docs(audio-recorder): update `README.md`
github-actions[bot] Mar 16, 2026
15ec9c8
docs(barometer): update `README.md`
github-actions[bot] Mar 16, 2026
f174643
docs(biometrics): update `README.md`
github-actions[bot] Mar 16, 2026
5dfd6ea
docs(bluetooth-low-energy): update `README.md`
github-actions[bot] Mar 16, 2026
3391dc1
docs(contacts): update `README.md`
github-actions[bot] Mar 16, 2026
6e4ae7d
docs(file-compressor): update `README.md`
github-actions[bot] Mar 16, 2026
b24639c
docs(geocoder): update `README.md`
github-actions[bot] Mar 16, 2026
cbc1272
docs(media-session): update `README.md`
github-actions[bot] Mar 16, 2026
1384b78
docs(nfc): update `README.md`
github-actions[bot] Mar 16, 2026
61eae63
docs(oauth): update `README.md`
github-actions[bot] Mar 16, 2026
d33bc85
docs(pedometer): update `README.md`
github-actions[bot] Mar 16, 2026
8ad4efd
docs(printer): update `README.md`
github-actions[bot] Mar 16, 2026
1ed4001
docs(purchases): update `README.md`
github-actions[bot] Mar 16, 2026
daf2bfb
docs(secure-preferences): update `README.md`
github-actions[bot] Mar 16, 2026
545eec0
docs(share-target): update `README.md`
github-actions[bot] Mar 16, 2026
96e679d
docs(speech-recognition): update `README.md`
github-actions[bot] Mar 16, 2026
b8da680
docs(speech-synthesis): update `README.md`
github-actions[bot] Mar 16, 2026
3b150af
docs(sqlite): update `README.md`
github-actions[bot] Mar 16, 2026
4ee3cbe
docs(wifi): update `README.md`
github-actions[bot] Mar 16, 2026
1c44fe9
docs(zip): update `README.md`
github-actions[bot] Mar 16, 2026
6f7419e
docs: update installation instructions to include AI-Assisted Setup
robingenz Mar 16, 2026
43124f9
docs(accelerometer): update `README.md`
github-actions[bot] Mar 16, 2026
0ca50d6
docs(audio-player): update `README.md`
github-actions[bot] Mar 16, 2026
e4a9ebf
docs(audio-recorder): update `README.md`
github-actions[bot] Mar 16, 2026
80d872f
docs(barometer): update `README.md`
github-actions[bot] Mar 16, 2026
acdf765
docs(biometrics): update `README.md`
github-actions[bot] Mar 16, 2026
7cb4821
docs(bluetooth-low-energy): update `README.md`
github-actions[bot] Mar 16, 2026
28cf2e4
docs(contacts): update `README.md`
github-actions[bot] Mar 16, 2026
f1df100
docs(file-compressor): update `README.md`
github-actions[bot] Mar 16, 2026
9acab69
docs(geocoder): update `README.md`
github-actions[bot] Mar 16, 2026
5a80d40
docs(media-session): update `README.md`
github-actions[bot] Mar 16, 2026
4b4a8bf
docs(nfc): update `README.md`
github-actions[bot] Mar 16, 2026
7cdcec4
docs(oauth): update `README.md`
github-actions[bot] Mar 16, 2026
2fb2d6a
docs(pedometer): update `README.md`
github-actions[bot] Mar 16, 2026
6be6c79
docs(printer): update `README.md`
github-actions[bot] Mar 16, 2026
8e1e2ec
docs(purchases): update `README.md`
github-actions[bot] Mar 16, 2026
d29d7c2
docs(secure-preferences): update `README.md`
github-actions[bot] Mar 16, 2026
9b8dd80
docs(share-target): update `README.md`
github-actions[bot] Mar 16, 2026
ede492c
docs(speech-recognition): update `README.md`
github-actions[bot] Mar 16, 2026
e722d99
docs(speech-synthesis): update `README.md`
github-actions[bot] Mar 16, 2026
a018edf
docs(sqlite): update `README.md`
github-actions[bot] Mar 16, 2026
798d81a
docs(wifi): update `README.md`
github-actions[bot] Mar 16, 2026
58d5d6e
docs(zip): update `README.md`
github-actions[bot] Mar 16, 2026
672c89e
docs: add newsletter subscription information to multiple README files
robingenz Mar 16, 2026
8e7e11a
docs: update installation instructions in multiple README files
robingenz Mar 16, 2026
1eb2623
Update .changeset/add-notification-tapped-listener.md
sizeak Mar 17, 2026
729969d
fix(android-foreground-service): use FLAG_IMMUTABLE, namespace extra …
sizeak Mar 17, 2026
8ee8c59
merge upstream main and resolve README conflict
sizeak Mar 17, 2026
2d69cf3
revert(android-foreground-service): restore FLAG_MUTABLE to avoid bre…
sizeak Mar 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/add-notification-tapped-listener.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@capawesome-team/capacitor-android-foreground-service": minor
---

feat(android): add `notificationTapped` event listener
23 changes: 20 additions & 3 deletions packages/accelerometer/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,10 @@ We are proud to offer one of the most complete and feature-rich Capacitor plugin

Missing a feature? Just [open an issue](https://github.com/capawesome-team/capacitor-plugins/issues) and we'll take a look!

## Newsletter

Stay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).

## Compatibility

| Plugin Version | Capacitor Version | Status |
Expand All @@ -32,7 +36,7 @@ Missing a feature? Just [open an issue](https://github.com/capawesome-team/capac

## Installation

This plugin is only available to [Capawesome Insiders](https://capawesome.io/sponsors/insiders/).
This plugin is only available to [Capawesome Insiders](https://capawesome.io/insiders/).
First, make sure you have the Capawesome npm registry set up.
You can do this by running the following commands:

Expand All @@ -41,11 +45,24 @@ npm config set @capawesome-team:registry https://npm.registry.capawesome.io
npm config set //npm.registry.capawesome.io/:_authToken <YOUR_LICENSE_KEY>
```

**Attention**: Replace `<YOUR_LICENSE_KEY>` with the license key you received from Polar. If you don't have a license key yet, you can get one by becoming a [Capawesome Insider](https://capawesome.io/sponsors/insiders/).
**Attention**: Replace `<YOUR_LICENSE_KEY>` with the license key you received from Polar. If you don't have a license key yet, you can get one by becoming a [Capawesome Insider](https://capawesome.io/insiders/).

Next, you can use our **AI-Assisted Setup** to install the plugin.
Add the Capawesome Skills to your AI tool using the following command:

```bash
npx skills add capawesome-team/skills
```

Next, install the package:
Then use the following prompt:

```
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome-team/capacitor-accelerometer` plugin in my project.
```

If you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:

```bash
npm install @capawesome-team/capacitor-accelerometer
npx cap sync
```
Expand Down
19 changes: 19 additions & 0 deletions packages/age-signals/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@ We are proud to offer one of the most complete and feature-rich Capacitor plugin

Missing a feature? Just [open an issue](https://github.com/capawesome-team/capacitor-plugins/issues) and we'll take a look!

## Newsletter

Stay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).

## Compatibility

| Plugin Version | Capacitor Version | Status |
Expand All @@ -31,6 +35,21 @@ Missing a feature? Just [open an issue](https://github.com/capawesome-team/capac

## Installation

You can use our **AI-Assisted Setup** to install the plugin.
Add the Capawesome Skills to your AI tool using the following command:

```bash
npx skills add capawesome-team/skills
```

Then use the following prompt:

```
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-age-signals` plugin in my project.
```

If you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:

```bash
npm install @capawesome/capacitor-age-signals
npx cap sync
Expand Down
19 changes: 19 additions & 0 deletions packages/android-battery-optimization/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ Capacitor plugin for Android to manage battery optimization settings, request ex
</a>
</div>

## Newsletter

Stay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).

## Compatibility

| Plugin Version | Capacitor Version | Status |
Expand All @@ -16,6 +20,21 @@ Capacitor plugin for Android to manage battery optimization settings, request ex

## Installation

You can use our **AI-Assisted Setup** to install the plugin.
Add the Capawesome Skills to your AI tool using the following command:

```bash
npx skills add capawesome-team/skills
```

Then use the following prompt:

```
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome-team/capacitor-android-battery-optimization` plugin in my project.
```

If you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:

```bash
npm install @capawesome-team/capacitor-android-battery-optimization
npx cap sync
Expand Down
19 changes: 19 additions & 0 deletions packages/android-dark-mode-support/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ Capacitor plugin for seamless Android dark mode support. Enhance user experience
</a>
</div>

## Newsletter

Stay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).

## Compatibility

| Plugin Version | Capacitor Version | Status |
Expand All @@ -16,6 +20,21 @@ Capacitor plugin for seamless Android dark mode support. Enhance user experience

## Installation

You can use our **AI-Assisted Setup** to install the plugin.
Add the Capawesome Skills to your AI tool using the following command:

```bash
npx skills add capawesome-team/skills
```

Then use the following prompt:

```
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-android-dark-mode-support` plugin in my project.
```

If you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:

```bash
npm install @capawesome/capacitor-android-dark-mode-support
npx cap sync
Expand Down
19 changes: 19 additions & 0 deletions packages/android-edge-to-edge-support/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ Capacitor plugin to support [edge-to-edge](https://developer.android.com/develop

**Attention:** Despite its name, this plugin doesn't enable edge-to-edge mode by default. Instead, it preserves the traditional app behavior by applying proper insets to the webview, preventing Android's edge-to-edge changes from affecting apps that haven't been designed to support it.

## Newsletter

Stay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).

## Compatibility

| Plugin Version | Capacitor Version | Status |
Expand All @@ -23,6 +27,21 @@ Capacitor plugin to support [edge-to-edge](https://developer.android.com/develop

## Installation

You can use our **AI-Assisted Setup** to install the plugin.
Add the Capawesome Skills to your AI tool using the following command:

```bash
npx skills add capawesome-team/skills
```

Then use the following prompt:

```
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-android-edge-to-edge-support` plugin in my project.
```

If you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:

```bash
npm install @capawesome/capacitor-android-edge-to-edge-support
npx cap sync
Expand Down
112 changes: 97 additions & 15 deletions packages/android-foreground-service/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ Capacitor plugin to run a foreground service on Android.
</a>
</div>

## Newsletter

Stay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).

## Compatibility

| Plugin Version | Capacitor Version | Status |
Expand All @@ -16,6 +20,21 @@ Capacitor plugin to run a foreground service on Android.

## Installation

You can use our **AI-Assisted Setup** to install the plugin.
Add the Capawesome Skills to your AI tool using the following command:

```bash
npx skills add capawesome-team/skills
```

Then use the following prompt:

```
Use the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome-team/capacitor-android-foreground-service` plugin in my project.
```

If you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:

```bash
npm install @capawesome-team/capacitor-android-foreground-service
npx cap sync
Expand Down Expand Up @@ -117,21 +136,50 @@ const deleteNotificationChannel = async () => {

<docgen-index>

* [`moveToForeground()`](#movetoforeground)
* [`startForegroundService(...)`](#startforegroundservice)
* [`updateForegroundService(...)`](#updateforegroundservice)
* [`stopForegroundService()`](#stopforegroundservice)
* [`checkPermissions()`](#checkpermissions)
* [`requestPermissions()`](#requestpermissions)
* [`checkManageOverlayPermission()`](#checkmanageoverlaypermission)
* [`requestManageOverlayPermission()`](#requestmanageoverlaypermission)
* [`createNotificationChannel(...)`](#createnotificationchannel)
* [`deleteNotificationChannel(...)`](#deletenotificationchannel)
* [`addListener('buttonClicked', ...)`](#addlistenerbuttonclicked-)
* [`removeAllListeners()`](#removealllisteners)
* [Interfaces](#interfaces)
* [Type Aliases](#type-aliases)
* [Enums](#enums)
- [@capawesome-team/capacitor-android-foreground-service](#capawesome-teamcapacitor-android-foreground-service)
- [Newsletter](#newsletter)
- [Compatibility](#compatibility)
- [Installation](#installation)
- [Android](#android)
- [Configuration](#configuration)
- [Demo](#demo)
- [Usage](#usage)
- [API](#api)
- [moveToForeground()](#movetoforeground)
- [startForegroundService(...)](#startforegroundservice)
- [updateForegroundService(...)](#updateforegroundservice)
- [stopForegroundService()](#stopforegroundservice)
- [checkPermissions()](#checkpermissions)
- [requestPermissions()](#requestpermissions)
- [checkManageOverlayPermission()](#checkmanageoverlaypermission)
- [requestManageOverlayPermission()](#requestmanageoverlaypermission)
- [createNotificationChannel(...)](#createnotificationchannel)
- [deleteNotificationChannel(...)](#deletenotificationchannel)
- [addListener('buttonClicked', ...)](#addlistenerbuttonclicked-)
- [addListener('notificationTapped', ...)](#addlistenernotificationtapped-)
- [removeAllListeners()](#removealllisteners)
- [Interfaces](#interfaces)
- [StartForegroundServiceOptions](#startforegroundserviceoptions)
- [NotificationButton](#notificationbutton)
- [PermissionStatus](#permissionstatus)
- [ManageOverlayPermissionResult](#manageoverlaypermissionresult)
- [CreateNotificationChannelOptions](#createnotificationchanneloptions)
- [DeleteNotificationChannelOptions](#deletenotificationchanneloptions)
- [PluginListenerHandle](#pluginlistenerhandle)
- [ButtonClickedEvent](#buttonclickedevent)
- [NotificationTappedEvent](#notificationtappedevent)
- [Type Aliases](#type-aliases)
- [UpdateForegroundServiceOptions](#updateforegroundserviceoptions)
- [PermissionState](#permissionstate)
- [ButtonClickedEventListener](#buttonclickedeventlistener)
- [NotificationTappedEventListener](#notificationtappedeventlistener)
- [Enums](#enums)
- [ServiceType](#servicetype)
- [Importance](#importance)
- [FAQ](#faq)
- [Why can the user dismiss the notification?](#why-can-the-user-dismiss-the-notification)
- [Changelog](#changelog)
- [License](#license)

</docgen-index>

Expand Down Expand Up @@ -344,6 +392,28 @@ Only available on iOS.
--------------------


### addListener('notificationTapped', ...)

```typescript
addListener(eventName: 'notificationTapped', listenerFunc: NotificationTappedEventListener) => Promise<PluginListenerHandle>
```

Called when the foreground service notification is tapped.

Only available on Android.

| Param | Type |
| ------------------ | --------------------------------------------------------------------------------------------- |
| **`eventName`** | <code>'notificationTapped'</code> |
| **`listenerFunc`** | <code><a href="#notificationtappedeventlistener">NotificationTappedEventListener</a></code> |

**Returns:** <code>Promise&lt;<a href="#pluginlistenerhandle">PluginListenerHandle</a>&gt;</code>

**Since:** 8.1.0

--------------------


### removeAllListeners()

```typescript
Expand Down Expand Up @@ -427,6 +497,13 @@ Remove all listeners for this plugin.
| **`buttonId`** | <code>number</code> | The button identifier. | 0.2.0 |


#### NotificationTappedEvent

| Prop | Type | Description | Since |
| -------------------- | ------------------- | ---------------------------- | ----- |
| **`notificationId`** | <code>number</code> | The notification identifier. | 8.1.0 |


### Type Aliases


Expand All @@ -445,6 +522,11 @@ Remove all listeners for this plugin.
<code>(event: <a href="#buttonclickedevent">ButtonClickedEvent</a>): void</code>


#### NotificationTappedEventListener

<code>(event: <a href="#notificationtappedevent">NotificationTappedEvent</a>): void</code>


### Enums


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -77,15 +77,19 @@ public int onStartCommand(Intent intent, int flags, int startId) {
}

private PendingIntent buildContentIntent(int id) {
String packageName = getApplicationContext().getPackageName();
Intent intent = getApplicationContext().getPackageManager().getLaunchIntentForPackage(packageName);
Intent launchIntent = getPackageManager().getLaunchIntentForPackage(getPackageName());
if (launchIntent == null) {
return null;
}
launchIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
launchIntent.putExtra(ForegroundServicePlugin.NOTIFICATION_TAP_EXTRA, id);
int pendingIntentFlags;
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
pendingIntentFlags = PendingIntent.FLAG_CANCEL_CURRENT | PendingIntent.FLAG_MUTABLE;
pendingIntentFlags = PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_MUTABLE;
} else {
pendingIntentFlags = PendingIntent.FLAG_CANCEL_CURRENT;
pendingIntentFlags = PendingIntent.FLAG_UPDATE_CURRENT;
}
return PendingIntent.getActivity(getApplicationContext(), id, intent, pendingIntentFlags);
return PendingIntent.getActivity(getApplicationContext(), id, launchIntent, pendingIntentFlags);
}

private Notification.Action[] convertBundlesToNotificationActions(Bundle[] bundles) {
Expand Down
Loading