Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
ae800df
Release 8.0.1
Jan 13, 2026
95dc7d8
fix(core): make SystemBars hide and show options optional (#8305)
jcesarmobile Jan 13, 2026
2a66b44
fix(SystemBars): get correct style on handleOnConfigurationChanged (#…
theproducer Jan 13, 2026
0969c5c
fix(cli): Update tar package (#8311)
jcesarmobile Jan 20, 2026
53c33b6
fix(SystemBars): Skipping margin manipulation when on a fixed WebView…
theproducer Jan 22, 2026
6037e38
fix(SystemBars): Set window background color according to theme (#8306)
theproducer Jan 26, 2026
dcc76c3
fix(android): AGP 9.0 no longer supports `proguard-android.txt` (#8315)
terencehonles Jan 27, 2026
154f3ce
Release 8.0.2
Jan 27, 2026
c5476c8
chore: update latest workflow to only allow pointing at 8.x (#8319)
markemer Jan 28, 2026
44e1cd5
chore(ci): download iOS simulators and test on iPhone 17 (#8322)
jcesarmobile Jan 29, 2026
0412d46
chore: bump main to 9.0.0-dev.0 (#8320)
markemer Jan 29, 2026
a125498
feat(cli): Add packageManager to iOS config (#8321)
jcesarmobile Feb 3, 2026
b10cd7f
fix(cookies): only send expires param on web if a date is set
ItsChaceD Feb 11, 2026
a48ebb6
revert: revert version bump from #8319 and #8320
markemer Feb 11, 2026
6994aaa
Release 8.1.0
Feb 11, 2026
05b1c16
chore: update workflow timeout
markemer Feb 11, 2026
a55dc5e
fix(cli): use 8.0.0 as default Capacitor SPM dependency version (#8341)
jcesarmobile Feb 12, 2026
a441280
fix(cli): Allow to run update on non macOS (#8344)
jcesarmobile Feb 13, 2026
ee304e3
chore(ci): increase timeout (#8340)
jcesarmobile Feb 16, 2026
fc9647f
fix(ios): remove tmpWindow usages on presentVC/dismissVC (#8338)
jcesarmobile Feb 17, 2026
7d001ac
fix(docs): fix typo in CapApp-SPM README (#8348)
maxnowack Feb 17, 2026
bd29b99
fix(android): Add missing null checks in BridgeActivity (#8185)
theigl Feb 25, 2026
5e82c89
fix(android): Concurrent Range Requests for assets (#8357)
biguphpc Feb 26, 2026
782b9d9
fix(cli): Don't overwrite config.server section with `--live-reload` …
ZeroDX255 Feb 26, 2026
5db81e6
feat(cli): Add --https option for --live-reload (#8194)
Shellishack Mar 2, 2026
3109d22
fix(android): invalid http range seeking (#8369)
bwees Mar 2, 2026
ae0e2dd
fix(android): handle lowercase range header (#8368)
bwees Mar 3, 2026
379101c
docs(cli): Better descriptions for live-reload parameters (#8373)
OS-pedrogustavobilro Mar 3, 2026
09770f7
Release 8.2.0
Mar 6, 2026
8dddd0b
chore(ci): close issues after 7 days (#8385)
jcesarmobile Mar 13, 2026
003099a
fix(http): handle URL objects on fetch (#8386)
jcesarmobile Mar 16, 2026
4e99598
fix(SystemBars): use native safe area insets on Android (#8384)
theproducer Mar 16, 2026
14e4af2
chore: change needs reproduction bot message (#8390)
jcesarmobile Mar 17, 2026
afb80f2
fix(ios): make getArray accesible on Objective-C plugins (#8392)
jcesarmobile Mar 18, 2026
a9f2181
fix(android): correctly parsing `server.url` when they include paths …
theproducer Mar 19, 2026
d2ee84f
feat(cli): Experimental config for swift-tools-version in SPM apps (#…
OS-pedrogustavobilro Mar 23, 2026
69476ab
fix(cli): inline CSS sourcemaps in addition to JS sourcemaps (#8377)
terencehonles Mar 24, 2026
f03cfbe
chore: direct Feature Requests to canny (#8395)
jcesarmobile Mar 24, 2026
27e6aa8
feat(cli): support SPM package traits in generated Package.swift (#8351)
robingenz Mar 24, 2026
39f084a
Release 8.3.0
Mar 25, 2026
acb64ab
fix(cli): check CAPACITOR_COCOAPODS_PATH in determinePackageManager (…
jcesarmobile Mar 27, 2026
3d1f8d1
fix(system-bars): use separate current styles (#8409)
jcesarmobile Mar 31, 2026
aa22484
chore: sync plus with upstream main (needs manual conflict resolution)
Apr 13, 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
3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Feature Request
url: https://outsystems.canny.io/capacitor-feature-requests
about: Request a new feature
- name: ⚙️ Request a new plugin
url: https://github.com/capacitor-community/proposals
about: Propose a new plugin or platform to the Capacitor community
Expand Down
50 changes: 0 additions & 50 deletions .github/ISSUE_TEMPLATE/feature-request.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/ionic-issue-bot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ comment:
message: >
This issue needs more information before it can be addressed.
In particular, the reporter needs to provide a minimal sample app that demonstrates the issue.
If no sample app is provided within 15 days, the issue will be closed.
If no sample app is provided within 7 days, the issue will be closed.

Please see the Contributing Guide for [how to create a Sample App](https://github.com/ionic-team/capacitor/blob/HEAD/CONTRIBUTING.md#creating-a-code-reproduction).

Expand Down
21 changes: 21 additions & 0 deletions .github/workflows/needs-reply.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Close old issues that need reply

on:
schedule:
- cron: "0 0 * * *"

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Close old issues that need reply
uses: imhoffd/needs-reply@v2
with:
repo-token: ${{ secrets.BOT_TOKEN }}
issue-label: 'needs reply'
days-before-close: 7
close-message: |
It looks like this issue didn't get the information it needed, so I'll close it for now. If I made a mistake, sorry! I am just a bot.

Have a great day!
Ionitron 💙
30 changes: 30 additions & 0 deletions .github/workflows/publish-ios.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Publish Native iOS Library

on:
workflow_call:
secrets:
COCOAPODS_TRUNK_TOKEN:
required: true
workflow_dispatch:

jobs:
publish-ios:
runs-on: macos-15
timeout-minutes: 30
steps:
- run: sudo xcode-select --switch /Applications/Xcode_26.0.app
- run: xcrun simctl list > /dev/null
- run: xcodebuild -downloadPlatform iOS
Comment on lines +15 to +17
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🌐 Web query:

Does the GitHub Actions macos-15 runner image currently include /Applications/Xcode_26.0.app, and what Xcode app bundle paths are officially documented as preinstalled?

💡 Result:

No, the GitHub Actions macos-15 runner image does not include /Applications/Xcode_26.0.app as a primary bundle path. It includes /Applications/Xcode_26.0.1.app with a symlink at /Applications/Xcode_26.0.app. The officially documented preinstalled Xcode app bundle paths on macos-15 (current image version 20260330.0336.1, macOS 15.7.5) are: - Xcode 26.3 (17C529): /Applications/Xcode_26.3.app (symlink: /Applications/Xcode_26.3.0.app) - Xcode 26.2 (17C52): /Applications/Xcode_26.2.app (symlink: /Applications/Xcode_26.2.0.app) - Xcode 26.1.1 (17B100): /Applications/Xcode_26.1.1.app (symlink: /Applications/Xcode_26.1.app) - Xcode 26.0.1 (17A400): /Applications/Xcode_26.0.1.app (symlink: /Applications/Xcode_26.0.app) - Xcode 16.4 (default, 16F6): /Applications/Xcode_16.4.app - Xcode 16.3 (16E140): /Applications/Xcode_16.3.app (symlink: /Applications/Xcode_16.3.0.app) - Xcode 16.0 (16A242d): /Applications/Xcode_16.app (symlinks: /Applications/Xcode_16.0.0.app, /Applications/Xcode_16.0.app, /Applications/Xcode.app) This information comes from the official runner-images repository's macos-15-Readme.md on the main branch, which documents the current production image used by GitHub Actions.

Citations:


The hardcoded Xcode path /Applications/Xcode_26.0.app currently exists on macos-15 as a symlink, but relying on it is fragile.

The path resolves via a symlink to /Applications/Xcode_26.0.1.app on the current image. However, hardcoding to a specific version introduces maintenance risk if GitHub Actions removes or restructures that symlink in future runner updates. Consider using a dynamic approach (e.g., detecting the default Xcode via xcode-select -p or xcrun --version) to avoid coupled workflows.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/publish-ios.yml around lines 15 - 17, The workflow
hardcodes Xcode via "xcode-select --switch /Applications/Xcode_26.0.app", which
is fragile; change it to dynamically detect and switch to the runner's default
Xcode instead (use the output of xcode-select -p or xcrun --version / xcrun
--show-sdk-path to determine the active developer path) and use that detected
path when invoking xcode-select and xcodebuild/xcrun commands (replace the
literal path in the xcode-select --switch step and ensure subsequent
xcrun/xcodebuild steps rely on the detected developer path).

- uses: actions/setup-node@v6
with:
node-version: 22.x
- uses: actions/checkout@v5
with:
fetch-depth: 0
ref: 'main'
Comment on lines +21 to +24
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

Don't force the workflow to publish main.

This release job ignores the triggering ref and always checks out main, so a run from another branch, tag, or reusable-workflow caller can publish the wrong sources.

Proposed fix
       - uses: actions/checkout@v5
         with:
           fetch-depth: 0
-          ref: 'main'
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- uses: actions/checkout@v5
with:
fetch-depth: 0
ref: 'main'
- uses: actions/checkout@v5
with:
fetch-depth: 0
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/publish-ios.yml around lines 21 - 24, The workflow forces
checkout of main which ignores the triggering ref; update the actions/checkout
step (the uses: actions/checkout@v5 entry and the ref: 'main' setting) to stop
pinning to main — remove the hardcoded ref or set it to the triggering ref (for
example use the workflow expression like github.ref or an input variable) so the
job checks out the commit/tag/branch that triggered the run instead of always
publishing main.

- name: Install Cocoapods
run: gem install cocoapods
- name: Deploy to Cocoapods
run: sh ./scripts/native-podspec.sh publish
env:
COCOAPODS_TRUNK_TOKEN: ${{ secrets.COCOAPODS_TRUNK_TOKEN }}
14 changes: 8 additions & 6 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
fi
setup:
runs-on: ubuntu-latest
timeout-minutes: 30
timeout-minutes: 60
steps:
- name: Get Latest
uses: actions/setup-node@v6
Expand All @@ -39,7 +39,7 @@ jobs:
key: ${{ runner.OS }}-dependencies-cache-${{ hashFiles('**/package.json') }}
lint:
runs-on: macos-15
timeout-minutes: 30
timeout-minutes: 60
steps:
- uses: actions/setup-node@v6
with:
Expand All @@ -55,7 +55,7 @@ jobs:
- run: npm run lint
test-cli:
runs-on: macos-15
timeout-minutes: 30
timeout-minutes: 60
needs:
- setup
- lint
Expand All @@ -76,7 +76,7 @@ jobs:
working-directory: ./cli
test-core:
runs-on: ubuntu-latest
timeout-minutes: 30
timeout-minutes: 60
needs:
- setup
- lint
Expand All @@ -97,7 +97,7 @@ jobs:
working-directory: ./core
test-ios:
runs-on: macos-15
timeout-minutes: 30
timeout-minutes: 60
needs:
- setup
- lint
Expand All @@ -107,6 +107,8 @@ jobs:
- /Applications/Xcode_26.0.app
steps:
- run: sudo xcode-select --switch ${{ matrix.xcode }}
- run: xcrun simctl list > /dev/null
- run: xcodebuild -downloadPlatform iOS
- uses: actions/setup-node@v6
with:
node-version: 22.x
Expand All @@ -123,7 +125,7 @@ jobs:
run: sh ./scripts/native-podspec.sh lint
test-android:
runs-on: ubuntu-latest
timeout-minutes: 30
timeout-minutes: 60
needs:
- setup
- lint
Expand Down
68 changes: 68 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

<<<<<<< HEAD
## [8.0.8](https://github.com/Cap-go/capacitor-plus/compare/8.0.7...8.0.8) (2026-04-08)


Expand Down Expand Up @@ -453,6 +454,73 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
- update sync branches when upstream PRs have new commits ([5f80078](https://github.com/Cap-go/capacitor-plus/commit/5f80078db201099c6bf75b9e40a6efd1c3d8ac46))
- Upgrade to Typescript 5.x ([#6433](https://github.com/Cap-go/capacitor-plus/issues/6433)) ([88d0ded](https://github.com/Cap-go/capacitor-plus/commit/88d0ded9e7356531ffc4563b9b81a0f3f069484b))
- **webview:** add setServerAssetPath method ([881235b](https://github.com/Cap-go/capacitor-plus/commit/881235b14de23ef988746bfb89a5a0fc3c8d8466))
=======
# [8.3.0](https://github.com/ionic-team/capacitor/compare/8.2.0...8.3.0) (2026-03-25)

### Bug Fixes

- **android:** correctly parsing `server.url` when they include paths ([#8391](https://github.com/ionic-team/capacitor/issues/8391)) ([a9f2181](https://github.com/ionic-team/capacitor/commit/a9f218179b60555d86b44bf2b33354da3e64e98c))
- **cli:** inline CSS sourcemaps in addition to JS sourcemaps ([#8377](https://github.com/ionic-team/capacitor/issues/8377)) ([69476ab](https://github.com/ionic-team/capacitor/commit/69476ab9c0b47911a14d2482cab53a877a5ae784))
- **http:** handle URL objects on fetch ([#8386](https://github.com/ionic-team/capacitor/issues/8386)) ([003099a](https://github.com/ionic-team/capacitor/commit/003099aef246adfd76d890074d46b1484951824b))
- **ios:** make getArray accesible on Objective-C plugins ([#8392](https://github.com/ionic-team/capacitor/issues/8392)) ([afb80f2](https://github.com/ionic-team/capacitor/commit/afb80f2fecb4bf85dbebe25e815de2a5564264d6))
- **SystemBars:** use native safe area insets on Android ([#8384](https://github.com/ionic-team/capacitor/issues/8384)) ([4e99598](https://github.com/ionic-team/capacitor/commit/4e99598a2a57ee97e82be1aaa09492744622fa60))

### Features

- **cli:** Experimental config for swift-tools-version in SPM apps ([#8372](https://github.com/ionic-team/capacitor/issues/8372)) ([d2ee84f](https://github.com/ionic-team/capacitor/commit/d2ee84f8186909b142b418c02fc19f79d3c6a6ed))
- **cli:** support SPM package traits in generated Package.swift ([#8351](https://github.com/ionic-team/capacitor/issues/8351)) ([27e6aa8](https://github.com/ionic-team/capacitor/commit/27e6aa89cf22e0b1a6d46710faed9aa8899600b0))

# [8.2.0](https://github.com/ionic-team/capacitor/compare/8.1.0...8.2.0) (2026-03-06)

### Bug Fixes

- **android:** Add missing null checks in BridgeActivity ([#8185](https://github.com/ionic-team/capacitor/issues/8185)) ([bd29b99](https://github.com/ionic-team/capacitor/commit/bd29b9913a9279de26fc21c6cb0b93b8f5e5433a))
- **android:** Concurrent Range Requests for assets ([#8357](https://github.com/ionic-team/capacitor/issues/8357)) ([5e82c89](https://github.com/ionic-team/capacitor/commit/5e82c89f1bff6d0e9ccea2554007aacb920d4c58))
- **android:** handle lowercase range header ([#8368](https://github.com/ionic-team/capacitor/issues/8368)) ([ae0e2dd](https://github.com/ionic-team/capacitor/commit/ae0e2ddccb2904ee4b3d47d4be1f7556ac7000a1))
- **android:** invalid http range seeking ([#8369](https://github.com/ionic-team/capacitor/issues/8369)) ([3109d22](https://github.com/ionic-team/capacitor/commit/3109d22547253ed44293777c60652f14cf83e416))
- **cli:** Allow to run update on non macOS ([#8344](https://github.com/ionic-team/capacitor/issues/8344)) ([a441280](https://github.com/ionic-team/capacitor/commit/a441280d7c6b310ca516d6fb2736c09525987774))
- **cli:** Don't overwrite config.server section with `--live-reload` ([#7528](https://github.com/ionic-team/capacitor/issues/7528)) ([782b9d9](https://github.com/ionic-team/capacitor/commit/782b9d9c26dcf1282b918996becb0224c0baca1d))
- **cli:** use 8.0.0 as default Capacitor SPM dependency version ([#8341](https://github.com/ionic-team/capacitor/issues/8341)) ([a55dc5e](https://github.com/ionic-team/capacitor/commit/a55dc5ee4dfeab861cde1e11c9063aefea91006b))
- **docs:** fix typo in CapApp-SPM README ([#8348](https://github.com/ionic-team/capacitor/issues/8348)) ([7d001ac](https://github.com/ionic-team/capacitor/commit/7d001ac4c58757fba922ea50f5bf5233ce217490))
- **ios:** remove tmpWindow usages on presentVC/dismissVC ([#8338](https://github.com/ionic-team/capacitor/issues/8338)) ([fc9647f](https://github.com/ionic-team/capacitor/commit/fc9647f26f08ff64f53b32c79fb19f153e3b0a24))

### Features

- **cli:** Add --https option for --live-reload ([#8194](https://github.com/ionic-team/capacitor/issues/8194)) ([5db81e6](https://github.com/ionic-team/capacitor/commit/5db81e68c67652e9d2b29d7ad30629b423d2ad30))

# [8.1.0](https://github.com/ionic-team/capacitor/compare/8.0.2...8.1.0) (2026-02-11)

### Bug Fixes

- **cookies:** only send expires param on web if a date is set ([b10cd7f](https://github.com/ionic-team/capacitor/commit/b10cd7ff15b010a76802374214f4e0cbd04abdab))

### Features

- **cli:** Add packageManager to iOS config ([#8321](https://github.com/ionic-team/capacitor/issues/8321)) ([a125498](https://github.com/ionic-team/capacitor/commit/a1254983bbb9dcb273d93f3c5f639b792e516406))

### Reverts

- revert version bump from [#8319](https://github.com/ionic-team/capacitor/issues/8319) and [#8320](https://github.com/ionic-team/capacitor/issues/8320) ([a48ebb6](https://github.com/ionic-team/capacitor/commit/a48ebb622ea4ebe92927bf1756a4d8ac6012884b))

## [8.0.2](https://github.com/ionic-team/capacitor/compare/8.0.1...8.0.2) (2026-01-27)

### Bug Fixes

- **android:** AGP 9.0 no longer supports `proguard-android.txt` ([#8315](https://github.com/ionic-team/capacitor/issues/8315)) ([dcc76c3](https://github.com/ionic-team/capacitor/commit/dcc76c37508a9b71fb36d95707748c2dd115cf52))
- **cli:** Update tar package ([#8311](https://github.com/ionic-team/capacitor/issues/8311)) ([0969c5c](https://github.com/ionic-team/capacitor/commit/0969c5cd0b16cf23d2489a85a3b8fa1bee2ebf3b))
- **core:** make SystemBars hide and show options optional ([#8305](https://github.com/ionic-team/capacitor/issues/8305)) ([95dc7d8](https://github.com/ionic-team/capacitor/commit/95dc7d8ace3aabdda7e325c4a8ef7d1432ad37e9))
- **SystemBars:** get correct style on handleOnConfigurationChanged ([#8295](https://github.com/ionic-team/capacitor/issues/8295)) ([2a66b44](https://github.com/ionic-team/capacitor/commit/2a66b44915895f971e4a26a8612798aa2f95ea11))
- **SystemBars:** Set window background color according to theme ([#8306](https://github.com/ionic-team/capacitor/issues/8306)) ([6037e38](https://github.com/ionic-team/capacitor/commit/6037e3836ec24c9ddf26e74e5fbec20ab506adfd))
- **SystemBars:** Skipping margin manipulation when on a fixed WebView ([#8309](https://github.com/ionic-team/capacitor/issues/8309)) ([53c33b6](https://github.com/ionic-team/capacitor/commit/53c33b614218bf635322fbdf9a38038a7964e3d4))

## [8.0.1](https://github.com/ionic-team/capacitor/compare/8.0.0...8.0.1) (2026-01-13)

### Bug Fixes

- **android:** Remove calculated bottom inset if keyboard is visible ([#8280](https://github.com/ionic-team/capacitor/issues/8280)) ([196b642](https://github.com/ionic-team/capacitor/commit/196b642236d293a5012e3c307fcd942766e56cce))
- **cli:** Support wireless iOS devices in `cap run` ([#8301](https://github.com/ionic-team/capacitor/issues/8301)) ([dcb368c](https://github.com/ionic-team/capacitor/commit/dcb368c33555487f1b6f46a6d8e30736bdd78955))
- **cli:** use latest native-run ([#8296](https://github.com/ionic-team/capacitor/issues/8296)) ([121d830](https://github.com/ionic-team/capacitor/commit/121d83013f39e25009121533a2c3ad86e428d6b2))
>>>>>>> upstream/main

# [8.0.0](https://github.com/ionic-team/capacitor/compare/8.0.0-beta.0...8.0.0) (2025-12-08)

Expand Down
40 changes: 40 additions & 0 deletions android/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

<<<<<<< HEAD
## [8.0.8](https://github.com/Cap-go/capacitor-plus/compare/8.0.7...8.0.8) (2026-04-08)


Expand Down Expand Up @@ -210,6 +211,45 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
- support for Amazon Fire WebView ([#6603](https://github.com/Cap-go/capacitor-plus/issues/6603)) ([3cb4eb8](https://github.com/Cap-go/capacitor-plus/commit/3cb4eb89632bce8dc872418fdb130bfd4de40b68))
- System Bars Plugin ([#8180](https://github.com/Cap-go/capacitor-plus/issues/8180)) ([a32216a](https://github.com/Cap-go/capacitor-plus/commit/a32216ac0607172a3a9c7ae5cdbfc598769294a6))
- **webview:** add setServerAssetPath method ([881235b](https://github.com/Cap-go/capacitor-plus/commit/881235b14de23ef988746bfb89a5a0fc3c8d8466))
=======
# [8.3.0](https://github.com/ionic-team/capacitor/compare/8.2.0...8.3.0) (2026-03-25)

### Bug Fixes

- **android:** correctly parsing `server.url` when they include paths ([#8391](https://github.com/ionic-team/capacitor/issues/8391)) ([a9f2181](https://github.com/ionic-team/capacitor/commit/a9f218179b60555d86b44bf2b33354da3e64e98c))
- **http:** handle URL objects on fetch ([#8386](https://github.com/ionic-team/capacitor/issues/8386)) ([003099a](https://github.com/ionic-team/capacitor/commit/003099aef246adfd76d890074d46b1484951824b))
- **SystemBars:** use native safe area insets on Android ([#8384](https://github.com/ionic-team/capacitor/issues/8384)) ([4e99598](https://github.com/ionic-team/capacitor/commit/4e99598a2a57ee97e82be1aaa09492744622fa60))

# [8.2.0](https://github.com/ionic-team/capacitor/compare/8.1.0...8.2.0) (2026-03-06)

### Bug Fixes

- **android:** Add missing null checks in BridgeActivity ([#8185](https://github.com/ionic-team/capacitor/issues/8185)) ([bd29b99](https://github.com/ionic-team/capacitor/commit/bd29b9913a9279de26fc21c6cb0b93b8f5e5433a))
- **android:** Concurrent Range Requests for assets ([#8357](https://github.com/ionic-team/capacitor/issues/8357)) ([5e82c89](https://github.com/ionic-team/capacitor/commit/5e82c89f1bff6d0e9ccea2554007aacb920d4c58))
- **android:** handle lowercase range header ([#8368](https://github.com/ionic-team/capacitor/issues/8368)) ([ae0e2dd](https://github.com/ionic-team/capacitor/commit/ae0e2ddccb2904ee4b3d47d4be1f7556ac7000a1))
- **android:** invalid http range seeking ([#8369](https://github.com/ionic-team/capacitor/issues/8369)) ([3109d22](https://github.com/ionic-team/capacitor/commit/3109d22547253ed44293777c60652f14cf83e416))

# [8.1.0](https://github.com/ionic-team/capacitor/compare/8.0.2...8.1.0) (2026-02-11)

### Reverts

- revert version bump from [#8319](https://github.com/ionic-team/capacitor/issues/8319) and [#8320](https://github.com/ionic-team/capacitor/issues/8320) ([a48ebb6](https://github.com/ionic-team/capacitor/commit/a48ebb622ea4ebe92927bf1756a4d8ac6012884b))

## [8.0.2](https://github.com/ionic-team/capacitor/compare/8.0.1...8.0.2) (2026-01-27)

### Bug Fixes

- **android:** AGP 9.0 no longer supports `proguard-android.txt` ([#8315](https://github.com/ionic-team/capacitor/issues/8315)) ([dcc76c3](https://github.com/ionic-team/capacitor/commit/dcc76c37508a9b71fb36d95707748c2dd115cf52))
- **SystemBars:** get correct style on handleOnConfigurationChanged ([#8295](https://github.com/ionic-team/capacitor/issues/8295)) ([2a66b44](https://github.com/ionic-team/capacitor/commit/2a66b44915895f971e4a26a8612798aa2f95ea11))
- **SystemBars:** Set window background color according to theme ([#8306](https://github.com/ionic-team/capacitor/issues/8306)) ([6037e38](https://github.com/ionic-team/capacitor/commit/6037e3836ec24c9ddf26e74e5fbec20ab506adfd))
- **SystemBars:** Skipping margin manipulation when on a fixed WebView ([#8309](https://github.com/ionic-team/capacitor/issues/8309)) ([53c33b6](https://github.com/ionic-team/capacitor/commit/53c33b614218bf635322fbdf9a38038a7964e3d4))

## [8.0.1](https://github.com/ionic-team/capacitor/compare/8.0.0...8.0.1) (2026-01-13)

### Bug Fixes

- **android:** Remove calculated bottom inset if keyboard is visible ([#8280](https://github.com/ionic-team/capacitor/issues/8280)) ([196b642](https://github.com/ionic-team/capacitor/commit/196b642236d293a5012e3c307fcd942766e56cce))
>>>>>>> upstream/main

# [8.0.0](https://github.com/ionic-team/capacitor/compare/8.0.0-beta.0...8.0.0) (2025-12-08)

Expand Down
4 changes: 4 additions & 0 deletions android/capacitor/src/main/assets/native-bridge.js
Original file line number Diff line number Diff line change
Expand Up @@ -505,6 +505,10 @@ var nativeBridge = (function (exports) {
if (typeof resource === 'string') {
return await win.CapacitorWebFetch(createProxyUrl(resource, win), options);
}
else if (resource instanceof URL) {
const modifiedURL = new URL(createProxyUrl(resource.toString(), win));
return await win.CapacitorWebFetch(modifiedURL, options);
}
else if (resource instanceof Request) {
const modifiedRequest = new Request(createProxyUrl(resource.url, win), resource);
return await win.CapacitorWebFetch(modifiedRequest, options);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -628,11 +628,11 @@ private void initWebView() {
try {
URL appUrlObject = new URL(appUrlConfig);
authorities.add(appUrlObject.getAuthority());
localUrl = appUrlObject.getProtocol() + "://" + appUrlObject.getAuthority();
} catch (Exception ex) {
Logger.error("Provided server url is invalid: " + ex.getMessage());
return;
}
localUrl = appUrlConfig;
appUrl = appUrlConfig;
} else {
appUrl = localUrl;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,9 @@ public Bridge getBridge() {
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
bridge.saveInstanceState(outState);
if (bridge != null) {
bridge.saveInstanceState(outState);
}
}

@Override
Expand All @@ -82,8 +84,10 @@ public void onStart() {
@Override
public void onRestart() {
super.onRestart();
this.bridge.onRestart();
Logger.debug("App restarted");
if (this.bridge != null) {
this.bridge.onRestart();
Logger.debug("App restarted");
}
}

@Override
Expand Down Expand Up @@ -131,7 +135,9 @@ public void onDestroy() {
@Override
public void onDetachedFromWindow() {
super.onDetachedFromWindow();
this.bridge.onDetachedFromWindow();
if (this.bridge != null) {
this.bridge.onDetachedFromWindow();
}
}

/**
Expand Down
Loading
Loading