Skip to content

fix(android): AGP 9 and Built-In Kotlin compatibility fixes - #2

Merged
alexgerardojacinto merged 1 commit into
feat/RMET-5337/new-local-notificationsfrom
fix/RMET-5373/agp9-kotlin
Aug 10, 2026
Merged

fix(android): AGP 9 and Built-In Kotlin compatibility fixes#2
alexgerardojacinto merged 1 commit into
feat/RMET-5337/new-local-notificationsfrom
fix/RMET-5373/agp9-kotlin

Conversation

@OS-pedrogustavobilro

Copy link
Copy Markdown
Contributor

This PR fixes some AGP 9 and Cap 9 compatibility with the Cap 8 compatible version currently in PR.

More specifically, it fixes these two Android compilation errors when running on a Cap 9 app:

  • Failed to apply plugin 'kotlin-android'.
  • Could not find method kotlinOptions() for arguments

@alexgerardojacinto
alexgerardojacinto merged commit a82aaf0 into feat/RMET-5337/new-local-notifications Aug 10, 2026
8 checks passed
@OS-pedrogustavobilro
OS-pedrogustavobilro deleted the fix/RMET-5373/agp9-kotlin branch August 10, 2026 17:06
alexgerardojacinto added a commit that referenced this pull request Aug 12, 2026
* @capacitor/local-notifications 8.2.2 — OutSystems unified build

Additive, non-breaking changes over @capacitor/local-notifications 8.2.1:
- new methods: update, cancelAll, getByIds, getAll, removeDeliveredNotificationsById
- new schema fields: badge, foreground; new schedule option exactAlarm (+ result warning)
- implicit notification-permission request on schedule/update
- OS-PLUG-LNOT-NNNN structured error codes
- Android implementation ported to Kotlin

* Add Capacitor example app (example-app/)

* example-app: add generated iOS & Android projects (mirror capacitor-calendar)

* Restore legacy past-date behavior: fire notifications immediately instead of rejecting

For a schedule 'at' in the past, both plugins now deliver the notification
immediately (nil trigger on iOS; alarm at now on Android) instead of failing
with OS-PLUG-LNOT-0005. This matches the katzer/ODC legacy behavior consumers
relied on and is non-breaking. Removed the now-dead SCHEDULE_IN_PAST /
scheduleInPast error entries. Consistent across Capacitor + Cordova, iOS + Android.

* Revert "Restore legacy past-date behavior: fire notifications immediately instead of rejecting"

This reverts commit 175ae2e.

* fix(android): don't delete repeating notifications

* Commit built dist/ so the plugin is consumable via git URL (ODC/MABS)

ODC/MABS installs the Capacitor plugin from the feature-branch git URL, and a git
install does not build dist (no prepare script), so the plugin shipped no
JavaScript — causing a runtime ReferenceError in Capacitor apps. Ship the built
dist/ on the branch (as an npm package would). Revert once published to npm.

* fix(android): do not clear notifications on cancel

* chore(android): move Android source files from java to kotlin directory

* fix: properly configure notifications with sound

* fix(android): properly handle notifications sounds

* fix(ios): set small intervals to platform's minimum (60 s)

* fix: properly handle sound and extra data

* fix(android): properly dismiss "triggered" notifications

* fix(android): don't remove triggered notifications on cancel

* fix(android): properly fetch triggered notifications

* fix(android): properly remove triggered notifications on clear

* fix(android): keep repeating notifications on triggered

* fix(android): properly handle triggered notifications

* fix(android): properly cancel alarm

* fix(android): properly remove notifications from storage

* fix(android): properly handle notifications

* fix(android): properly migrate notification storage

* fix(android): properly migrate data

* fix(ios): properly handle extra data

* chore: add extra button on example-app

* chore: add release workflows

* ci: properly configure lint

* fix(android): AGP 9 and Built-In Kotlin compatibility fixes (#2)

* fix(android): fixing exact alarm behaviour

* fix(android): fix exactAlarm behaviour

* fix(android): don't use isExactMandatory to show exact notification prompt

* fix(android): avoid asking for exact alarm permission if POST_NOTIFICATIONS was already denied

* chore: update app dependencies

* chore: update new API versions to 8.3.0 instead of 8.0.0

* fix(android): properly handle notifications set to be delivered in a past date

* chore: remove dist and add it to gitignore

* fix(ios): avoid deprecated `applicationIconBadgeNumber`

* chore: remove unused error

* fix(android): avoid re-firing an already triggered notification

---------

Co-authored-by: Pedro Bilro <pedro.gustavo.bilro@outsystems.com>
capacitor-bot pushed a commit that referenced this pull request Aug 14, 2026
# [8.3.0](v8.2.1...v8.3.0) (2026-08-14)

### Features

* new Local Notifications Capacitor plugin ([#1](#1)) ([2bcb375](2bcb375)), closes [#2](#2)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants