<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Apache Cordova</title>
    <description>Apache Cordova is a set of device APIs that allow a web mobile app developer to access native device function from JavaScript.
</description>
    <link>https://cordova.apache.org/</link>
    <atom:link href="https://cordova.apache.org/feed.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Mon, 10 Aug 2026 12:11:17 +0000</pubDate>
    <lastBuildDate>Mon, 10 Aug 2026 12:11:17 +0000</lastBuildDate>
    <generator>Jekyll v4.4.1</generator>
    
      <item>
        <title>File Transfer Plugin 2.0.1 Released!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released an update for &lt;code&gt;cordova-plugin-file-transfer&lt;/code&gt;!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-plugin-file-transfer&quot;&gt;cordova-plugin-file-transfer@2.0.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova plugin remove cordova-plugin-file-transfer
cordova plugin add cordova-plugin-file-transfer@2.0.1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;p&gt;This is a patch release which resolves a build error with Xcode and cordova-ios 8.0.0.&lt;/p&gt;

&lt;!--more--&gt;
&lt;h3&gt;Fixes&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;fix(ios): cast to &lt;code&gt;CDVFile&lt;/code&gt; when getting the plugin by &lt;code&gt;getCommandInstance&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/385&quot;&gt;#385&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/7b869a2&quot;&gt;7b869a2&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): Set minimum XCode version in GitHub Action to 15 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/386&quot;&gt;#386&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/41b0605&quot;&gt;41b0605&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Others&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;chore: update linter (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/396&quot;&gt;#396&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/e7a7a1f&quot;&gt;e7a7a1f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: sync workflows with paramedic, add release audit &amp;amp; missing license headers (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/390&quot;&gt;#390&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/86ad889&quot;&gt;86ad889&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: add asf config (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/375&quot;&gt;#375&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/f12b73e&quot;&gt;f12b73e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: bump version 2.0.1-dev [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/2c15ad2&quot;&gt;2c15ad2&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ci): draft release (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/395&quot;&gt;#395&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/02dd05e&quot;&gt;02dd05e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump flatted from 3.2.7 to 3.4.3 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/393&quot;&gt;#393&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/485ae29&quot;&gt;485ae29&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump minimatch from 3.1.2 to 3.1.5 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/392&quot;&gt;#392&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/c20f683&quot;&gt;c20f683&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump js-yaml from 4.1.0 to 4.3.0 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/394&quot;&gt;#394&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/33f34e0&quot;&gt;33f34e0&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump brace-expansion from 1.1.11 to 1.1.12 in /tests/server (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/382&quot;&gt;#382&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/345c6cf&quot;&gt;345c6cf&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(INFRA): Set up default protection ruleset for default and release branches (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/389&quot;&gt;#389&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/c8d6b90&quot;&gt;c8d6b90&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;ci: sync workflow w/ paramedic (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/379&quot;&gt;#379&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/24e2e99&quot;&gt;24e2e99&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;doc(readme): update badges, update license header (&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/pull/391&quot;&gt;#391&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-file-transfer/commit/8793e51&quot;&gt;8793e51&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Mon, 10 Aug 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/08/10/cordova-plugin-file-transfer-2.0.1.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/08/10/cordova-plugin-file-transfer-2.0.1.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        <category>plugins</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova Android 15.1.0 Released!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released &lt;code&gt;Cordova Android 15.1.0&lt;/code&gt;! This is one of Cordova&amp;#39;s supported platforms for building Android applications.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-android&quot;&gt;cordova-android@15.1.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform remove android
cordova platform add android@15.1.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;To install:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform add android@15.1.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;h3&gt;Features&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Deprecation of &lt;code&gt;PermissionHelper&lt;/code&gt;&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;The &lt;code&gt;PermissionHelper&lt;/code&gt; class has been deprecated.&lt;/p&gt;

    &lt;p&gt;Plugin developers that relied on the &lt;code&gt;PermissionHelper&lt;/code&gt; class should migrate their plugins to use the permission APIs available through the &lt;code&gt;CordovaInterface&lt;/code&gt; of the &lt;code&gt;CordovaPlugin&lt;/code&gt;.&lt;/p&gt;

    &lt;p&gt;&lt;strong&gt;Before:&lt;/strong&gt;&lt;/p&gt;

    &lt;div class=&quot;language-java highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  &lt;span class=&quot;c1&quot;&gt;// Requesting a Permission&lt;/span&gt;
  &lt;span class=&quot;nc&quot;&gt;PermissionHelper&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;requestPermission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;requestCode&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;Manifest&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;permission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;READ_MEDIA_IMAGES&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;

  &lt;span class=&quot;c1&quot;&gt;// Requesting a Collection of Permissions&lt;/span&gt;
  &lt;span class=&quot;nc&quot;&gt;PermissionHelper&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;requestPermissions&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;requestCode&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[]{&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;Manifest&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;permission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;READ_MEDIA_IMAGES&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;});&lt;/span&gt;
    
  &lt;span class=&quot;c1&quot;&gt;// Checking if the App has a Permission&lt;/span&gt;
  &lt;span class=&quot;nc&quot;&gt;PermissionHelper&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;hasPermission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;Manifest&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;permission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;READ_MEDIA_IMAGES&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;&lt;strong&gt;After:&lt;/strong&gt;&lt;/p&gt;

    &lt;div class=&quot;language-java highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  &lt;span class=&quot;c1&quot;&gt;// Requesting a Permission&lt;/span&gt;
  &lt;span class=&quot;n&quot;&gt;cordova&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;requestPermission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;requestCode&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;Manifest&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;permission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;READ_MEDIA_IMAGES&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;

  &lt;span class=&quot;c1&quot;&gt;// Requesting a Collection of Permissions&lt;/span&gt;
  &lt;span class=&quot;n&quot;&gt;cordova&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;requestPermissions&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;this&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;requestCode&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;k&quot;&gt;new&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;String&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;[]{&lt;/span&gt; &lt;span class=&quot;nc&quot;&gt;Manifest&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;permission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;READ_MEDIA_IMAGES&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;});&lt;/span&gt;
    
  &lt;span class=&quot;c1&quot;&gt;// Checking if the App has a Permission&lt;/span&gt;
  &lt;span class=&quot;n&quot;&gt;cordova&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;hasPermission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nc&quot;&gt;Manifest&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;permission&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;na&quot;&gt;READ_MEDIA_IMAGES&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Calling of &lt;code&gt;CordovaPlugin.onRequestPermissionsResult&lt;/code&gt;&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Updated &lt;code&gt;CordovaInterfaceImpl.onRequestPermissionsResult&lt;/code&gt; to call the new &lt;code&gt;CordovaPlugin.onRequestPermissionsResult&lt;/code&gt; method in addition to the exisiting &lt;code&gt;CordovaPlugin.onRequestPermissionResult&lt;/code&gt;.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Fixes&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Keyboard Layout and Page Scrolling when Input Fields Receive Focus&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Fixes a UI layout and scrolling bug, that was introduced in &lt;code&gt;cordova-android@15.0.0&lt;/code&gt;, where focusing on an input field while the soft keyboard was open could cause the WebView to shift upwards, leaving an unrendered space at the bottom of the Activity, and prevent the page from scrolling. This update restores the expected layout and scrolling behavior when interacting with input fields.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Handle Permissions for &lt;code&gt;getUserMedia&lt;/code&gt;&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Fixes &lt;code&gt;getUserMedia()&lt;/code&gt; permission handling to correctly check for and request the required native camera and microphone permissions before proceeding. This aligns the WebView permission flow with the native platform, improving compatibility and ensuring media requests behave as expected.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Back Button Handling After App Launch&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Fixes an issue where the back button would not respond immediately after the app launched. Back button events are now handled consistently from startup, including on devices that support the Android back gesture, ensuring expected navigation behavior throughout the app.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Properly Handle CSS Color with Alpha&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Fixes an issue where &lt;code&gt;window.statusbar.setBackgroundColor()&lt;/code&gt; incorrectly interpreted 8-digit hexadecimal CSS color values, which could result in the wrong status bar color being applied.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Status Bar Appearance Styling for Edge-to-Edge&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;When Edge-to-Edge was enabled, apps could not adjust the status bar text and icon appearance, which could make them difficult to see against certain backgrounds.&lt;/p&gt;

    &lt;p&gt;This release exposes the exisiting &lt;code&gt;window.statusbar.setBackgroundColor()&lt;/code&gt; JS API for Edge-to-Edge layouts. Although the API is used to set the status bar background color, it also determines the appropriate status bar text and icon appearance, allowing apps to maintain proper contrast. In Edge-to-Edge layouts, the background color itself is not applied as there is no status bar, but the calculated appearance is still applied.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Fix Status Bar Background Color Handling for Opaque White&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Fixes an issue where the valid color &lt;code&gt;#FFFFFFFF&lt;/code&gt; was incorrectly treated as an invalid status bar color, preventing fully opaque white from being applied. This restores support for all valid status bar background colors.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;!--more--&gt;
&lt;h1&gt;Changes include:&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;feat: call new method &lt;code&gt;CordovaPlugin.onRequestPermissionsResult&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1855&quot;&gt;#1855&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/b66f0f33&quot;&gt;b66f0f33&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat: deprecate &lt;code&gt;PermissionHelper&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1857&quot;&gt;#1857&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/8c839764&quot;&gt;8c839764&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat: remove unused private Method &lt;code&gt;PermissionHelper.deliverPermissionResult&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1858&quot;&gt;#1858&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/9c3d8268&quot;&gt;9c3d8268&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Fixes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;fix: webview loses scrollability and creates empty bottom space (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1924&quot;&gt;#1924&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/b91144c0&quot;&gt;b91144c0&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: handle permissions for getUserMedia (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1895&quot;&gt;#1895&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/24502178&quot;&gt;24502178&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: overwritten backbutton not firing on first time by hardware button and never on back gesture (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1910&quot;&gt;#1910&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/0bfbc20b&quot;&gt;0bfbc20b&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(android): use AndroidX &lt;code&gt;OnBackPressedCallback&lt;/code&gt; instead of &lt;code&gt;OnBackInvokedCallback&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1903&quot;&gt;#1903&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/9064bc07&quot;&gt;9064bc07&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(gradle-9): unable to resolve class XmlParser for Groovy 4.x (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1896&quot;&gt;#1896&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/9ae489bd&quot;&gt;9ae489bd&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(statusbar.js): remove trailing whitespace in comment for lint (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1970&quot;&gt;#1970&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/cdbeb603&quot;&gt;cdbeb603&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(statusbar): Properly handle CSS colours (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1955&quot;&gt;#1955&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/dd3fd357&quot;&gt;dd3fd357&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(SystemBarPlugin): remove &lt;code&gt;canEdgeToEdge&lt;/code&gt; check for &lt;code&gt;execute&lt;/code&gt; method (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1971&quot;&gt;#1971&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/61ebdcde&quot;&gt;61ebdcde&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(SystemBarPlugin): remove sentinel value &lt;code&gt;INVALID_COLOR&lt;/code&gt;, use &lt;code&gt;null&lt;/code&gt; instead  (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1939&quot;&gt;#1939&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/f4ecf997&quot;&gt;f4ecf997&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Others&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;chore: cleanup PermissionHelper (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1925&quot;&gt;#1925&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/7dd7f504&quot;&gt;7dd7f504&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: bump package 15.1.0-dev.0 &amp;amp; update package-lock (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1964&quot;&gt;#1964&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/929f2054&quot;&gt;929f2054&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: remove redundant Hello World template files (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1926&quot;&gt;#1926&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/56e263fe&quot;&gt;56e263fe&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: simplify edge-to-edge preference logic in CordovaActivity and SystemBarPlugin (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1902&quot;&gt;#1902&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/190076ba&quot;&gt;190076ba&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: ignore gradle build artificat &lt;code&gt;problems-report.html&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1912&quot;&gt;#1912&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/b1705d83&quot;&gt;b1705d83&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: more license header updates (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1909&quot;&gt;#1909&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/1f70d396&quot;&gt;1f70d396&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: update package-lock (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1905&quot;&gt;#1905&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/af56a003&quot;&gt;af56a003&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ci): update &amp;amp; clean workflow (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1966&quot;&gt;#1966&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/654b03a3&quot;&gt;654b03a3&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ci): improve workflows &amp;amp; dependabot (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1928&quot;&gt;#1928&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/08c4fd1e&quot;&gt;08c4fd1e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump js-yaml from 4.1.1 to 4.2.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1960&quot;&gt;#1960&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/ebccedf6&quot;&gt;ebccedf6&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump tmp from 0.2.6 to 0.2.7 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1956&quot;&gt;#1956&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/d90eeecb&quot;&gt;d90eeecb&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump tmp from 0.2.5 to 0.2.6 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1945&quot;&gt;#1945&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/a63c1e18&quot;&gt;a63c1e18&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump c8 from 10.1.3 to 11.0.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1941&quot;&gt;#1941&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/74fbbdce&quot;&gt;74fbbdce&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump jasmine from 6.1.0 to 6.2.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1932&quot;&gt;#1932&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/90b4b057&quot;&gt;90b4b057&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump github/codeql-action/analyze from 4.36.3 to 4.37.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1973&quot;&gt;#1973&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/80658ea4&quot;&gt;80658ea4&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump github/codeql-action/init from 4.36.3 to 4.37.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1972&quot;&gt;#1972&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/89771e64&quot;&gt;89771e64&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump actions/setup-java from 5.4.0 to 5.5.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1974&quot;&gt;#1974&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/065a99d8&quot;&gt;065a99d8&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump github/codeql-action/analyze from 4.36.2 to 4.36.3 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1969&quot;&gt;#1969&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/d830222e&quot;&gt;d830222e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump github/codeql-action/init from 4.36.2 to 4.36.3 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1968&quot;&gt;#1968&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/1e2f0ca6&quot;&gt;1e2f0ca6&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump codecov/codecov-action from 4.6.0 to 7.0.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1954&quot;&gt;#1954&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/acbc5b48&quot;&gt;acbc5b48&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump actions/setup-java from 5.3.0 to 5.4.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1965&quot;&gt;#1965&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/cb52fb8d&quot;&gt;cb52fb8d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump actions/checkout from 6.0.3 to 7.0.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1959&quot;&gt;#1959&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/79771499&quot;&gt;79771499&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump actions/setup-java from 5.2.0 to 5.3.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1958&quot;&gt;#1958&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/e53dc373&quot;&gt;e53dc373&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump actions/checkout from 6.0.2 to 6.0.3 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1952&quot;&gt;#1952&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/703ebeae&quot;&gt;703ebeae&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump github/codeql-action from 4.36.0 to 4.36.2 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1953&quot;&gt;#1953&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/363a9a77&quot;&gt;363a9a77&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump github/codeql-action from 4.35.5 to 4.36.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1944&quot;&gt;#1944&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/a1f75a3e&quot;&gt;a1f75a3e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump erisu/apache-rat-action from 2.0.0 to 3.0.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1937&quot;&gt;#1937&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/4ce731da&quot;&gt;4ce731da&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump semver from 7.7.4 to 7.8.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1934&quot;&gt;#1934&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/c636f8bb&quot;&gt;c636f8bb&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump erisu/license-checker-action from 2.0.1 to 2.1.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1930&quot;&gt;#1930&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/0baa901d&quot;&gt;0baa901d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump @xmldom/xmldom from 0.8.12 to 0.8.13 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1918&quot;&gt;#1918&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/0d6fdd17&quot;&gt;0d6fdd17&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump lodash from 4.17.23 to 4.18.1 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1914&quot;&gt;#1914&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/7b33c5dd&quot;&gt;7b33c5dd&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump @xmldom/xmldom from 0.8.11 to 0.8.12 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1911&quot;&gt;#1911&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/c44a4627&quot;&gt;c44a4627&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump picomatch (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1908&quot;&gt;#1908&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/2868f93a&quot;&gt;2868f93a&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump minimatch (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1898&quot;&gt;#1898&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/31f3d57c&quot;&gt;31f3d57c&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(gh-action): improve draft-release workflow (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1906&quot;&gt;#1906&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/340eade2&quot;&gt;340eade2&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(INFRA): Set up default protection ruleset for default and release branches (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1927&quot;&gt;#1927&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/f490531d&quot;&gt;f490531d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(post-release): bump v15.0.1-dev.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1899&quot;&gt;#1899&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/c02d1b03&quot;&gt;c02d1b03&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;doc: improve documentation of &lt;code&gt;onRequestPermissionResult&lt;/code&gt; and &lt;code&gt;onRequestPermissionsResult&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1920&quot;&gt;#1920&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/1d01ea1f&quot;&gt;1d01ea1f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;doc(CordovaPreferences): Improve documentation for using Long.decode instead of Integer.decode (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1943&quot;&gt;#1943&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/661fadd0&quot;&gt;661fadd0&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;doc(statusbar.js): document &lt;code&gt;visible&lt;/code&gt; property and &lt;code&gt;setBackgroundColor&lt;/code&gt; method (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1961&quot;&gt;#1961&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/50ee09e4&quot;&gt;50ee09e4&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;refactor: address warnings in SystemWebChromeClient.java (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1951&quot;&gt;#1951&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/80491e9a&quot;&gt;80491e9a&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Wed, 22 Jul 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/07/22/cordova-android-15.1.0.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/07/22/cordova-android-15.1.0.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova iOS 8.1.1 Released!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released &lt;code&gt;Cordova iOS 8.1.1&lt;/code&gt;! This is one of Cordova&amp;#39;s supported platforms for building iOS applications.&lt;/p&gt;

&lt;p&gt;This release includes general improvements and fixes for several bugs.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-ios&quot;&gt;cordova-ios@8.1.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform remove ios
cordova platform add ios@8.1.1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;To install:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform add ios@8.1.1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Updated the status bar&amp;#39;s &lt;code&gt;setBackgroundColor&lt;/code&gt; JS API to support alpha.&lt;/li&gt;
  &lt;li&gt;Fixed a &lt;strong&gt;CordovaLib&lt;/strong&gt; build issue that prevented compilation for &lt;code&gt;visionOS&lt;/code&gt; by removing status bar related incompatibilities.&lt;/li&gt;
  &lt;li&gt;Fixed &lt;code&gt;WKWebView&lt;/code&gt; to avoid registering the plugin as the script message handler when the &lt;code&gt;ViewController&lt;/code&gt; already implements &lt;code&gt;WKScriptMessageHandler&lt;/code&gt;.&lt;/li&gt;
  &lt;li&gt;Added missing &lt;strong&gt;CordovaLib&lt;/strong&gt; version availability macros and tests to ensure future releases include the required version definitions.&lt;/li&gt;
&lt;/ul&gt;

&lt;!--more--&gt;
&lt;h2&gt;Changes include:&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Fixes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;fix: dont call nativeFetchMessages if not implemented (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1643&quot;&gt;#1643&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/355f39be&quot;&gt;355f39be&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: proper macro check for &lt;code&gt;TARGET_OS_VISION&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1667&quot;&gt;#1667&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/fefb9316&quot;&gt;fefb9316&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(statusbar): Support setting alpha from the JS API (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1661&quot;&gt;#1661&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/410ada64&quot;&gt;410ada64&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(visionOS): Fix CordovaLib visionOS errors (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1665&quot;&gt;#1665&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/25486db2&quot;&gt;25486db2&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(wkwebview): fix ViewController being the ScriptMessageHandler (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1664&quot;&gt;#1664&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/5669c2c9&quot;&gt;5669c2c9&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: add missing availability macros and add tests to ensure it&amp;#39;s set (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1662&quot;&gt;#1662&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/49230b01&quot;&gt;49230b01&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Others:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;chore: ignore SPM dependency resolution &lt;code&gt;Package.resolved&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1666&quot;&gt;#1666&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/0f404b10&quot;&gt;0f404b10&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: release notes for 8.1.0 [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/3d52d7b3&quot;&gt;3d52d7b3&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: bump version to 8.1.1-dev.0 [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/a2f0cc54&quot;&gt;a2f0cc54&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ci): update &amp;amp; clean workflow (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1673&quot;&gt;#1673&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/4994749e&quot;&gt;4994749e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump js-yaml from 4.1.1 to 4.3.0 (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1672&quot;&gt;#1672&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/bd0c99b4&quot;&gt;bd0c99b4&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump tmp from 0.2.6 to 0.2.7 (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1668&quot;&gt;#1668&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/c20cdc93&quot;&gt;c20cdc93&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump tmp from 0.2.5 to 0.2.6 (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1657&quot;&gt;#1657&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/7db38623&quot;&gt;7db38623&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(workflow): more refactoring (&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1674&quot;&gt;#1674&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-ios/commit/eb65a51e&quot;&gt;eb65a51e&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Tue, 07 Jul 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/07/07/cordova-ios-8.1.1.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/07/07/cordova-ios-8.1.1.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova Plugin InAppBrowser 7.0.0 Released!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released an update to &lt;code&gt;cordova-plugin-inappbrowser&lt;/code&gt;!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-plugin-inappbrowser&quot;&gt;cordova-plugin-inappbrowser@7.0.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;p&gt;This major update makes the plugin compatible with cordova-ios 8.0.0, fixes layout issues with &lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1132&quot;&gt;XCode 26 compiling for iOS 26&lt;/a&gt;, layout issues regarding not respecting the &lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1099&quot;&gt;safe areas of the iPhone X&lt;/a&gt; and newer (iPhone 11, 12, etc.) and layout issues on &lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1148&quot;&gt;Android when the footer is used&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Some other relvant changes:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;Make zoom on-screen controls configurable on Android&lt;/li&gt;
  &lt;li&gt;Fixes issues ragarding the &lt;code&gt;beforeload&lt;/code&gt; event on Android and iOS&lt;/li&gt;
  &lt;li&gt;Cookies or data were not properly cleared when the options &lt;code&gt;cleardata&lt;/code&gt;, &lt;code&gt;clearcache&lt;/code&gt; or &lt;code&gt;clearsessioncache&lt;/code&gt; were set on Android and iOS&lt;/li&gt;
  &lt;li&gt;The callback context will only be changed for non-whitelisted urls (Android) or target &lt;code&gt;_blank&lt;/code&gt; (Android/iOS)&lt;/li&gt;
  &lt;li&gt;Fix XCode deprecations warnings&lt;/li&gt;
  &lt;li&gt;In-app browser did not show when using cordova-ios 8.0.0&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Please report any issues you find on &lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/issues&quot;&gt;GitHub&lt;/a&gt;!&lt;/p&gt;

&lt;!--more--&gt;
&lt;h2&gt;Changes include&lt;/h2&gt;

&lt;h3&gt;Breaking Changes&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;chore(ios)!: Remove unused private method (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1113&quot;&gt;#1113&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/b7ab3d0&quot;&gt;b7ab3d0&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;refactor(ios)!: remove property &lt;code&gt;instance&lt;/code&gt; and getter method &lt;code&gt;getInstance&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1116&quot;&gt;#1116&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/c5a0979&quot;&gt;c5a0979&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Features&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;feat(android): make zoom on-screen controls configurable (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1023&quot;&gt;#1023&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/24c6738&quot;&gt;24c6738&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat(ios): use &lt;code&gt;UIBarButtonSystemItemClose&lt;/code&gt; since iOS 26 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1138&quot;&gt;#1138&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/5cf7c2d&quot;&gt;5cf7c2d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat(ios): Support custom scheme event for iOS (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1112&quot;&gt;#1112&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/03831d7&quot;&gt;03831d7&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat(ios): correct code formatting (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1100&quot;&gt;#1100&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/fb5b469&quot;&gt;fb5b469&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Fixes&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;fix: add &lt;code&gt;data&lt;/code&gt; property for &lt;code&gt;InAppBrowserEvnet&lt;/code&gt; type (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1118&quot;&gt;#1118&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/18ef50d&quot;&gt;18ef50d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: defer navigation until async cookie or data clearing completes (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1150&quot;&gt;#1150&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/1b0be4a&quot;&gt;1b0be4a&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(android): change callback context only on non-whitelisted urls or target &lt;code&gt;_blank&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1147&quot;&gt;#1147&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/694adb0&quot;&gt;694adb0&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(android): &lt;code&gt;beforeload&lt;/code&gt; event fires only once (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1146&quot;&gt;#1146&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/160e414&quot;&gt;160e414&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(android): place footer below WebView instead of overlaying content (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1148&quot;&gt;#1148&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/56fb083&quot;&gt;56fb083&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): fix white screen on iOS 13+ when in-app browser window scene is nil (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1131&quot;&gt;#1131&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/c1c6544&quot;&gt;c1c6544&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): render in-app browser underneath the status bar (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1158&quot;&gt;#1158&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/40ff663&quot;&gt;40ff663&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): replace macro &lt;code&gt;kCloseButtonSystemItem&lt;/code&gt; with static function to fix XCode warning (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1153&quot;&gt;#1153&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/60a5c73&quot;&gt;60a5c73&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): check callbackId with regex (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1152&quot;&gt;#1152&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/e0bd9dc&quot;&gt;e0bd9dc&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): suppress expected cancellation errors when &lt;code&gt;beforeload&lt;/code&gt; is set (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1145&quot;&gt;#1145&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/0cea6cc&quot;&gt;0cea6cc&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): Don&amp;#39;t call &lt;code&gt;beforeload&lt;/code&gt; on POST and &lt;code&gt;beforeload=yes&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1144&quot;&gt;#1144&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/f71de8f&quot;&gt;f71de8f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): set callbackId only on target=_blank, update readme (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1143&quot;&gt;#1143&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/6106897&quot;&gt;6106897&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): constraint warnings in iOS 18 and older (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1123&quot;&gt;#1123&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/bad3830&quot;&gt;bad3830&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): add custom toolbar background (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1132&quot;&gt;#1132&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/c140eaf&quot;&gt;c140eaf&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): constrain address label horizontal to safe area for landscape (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1126&quot;&gt;#1126&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/de95bb2&quot;&gt;de95bb2&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): full width WebView on landscape (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1120&quot;&gt;#1120&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/22ebb87&quot;&gt;22ebb87&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): suppress deprecation warning for &lt;code&gt;processPool&lt;/code&gt; for&lt;code&gt;deployment-target&lt;/code&gt; greater than 14 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1119&quot;&gt;#1119&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/105b0ae&quot;&gt;105b0ae&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): remove use of deprecated &lt;code&gt;CDVWebViewProcessPoolFactory&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1115&quot;&gt;#1115&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/f76988e&quot;&gt;f76988e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): simplify using &lt;code&gt;CDVSettingsDictionary&lt;/code&gt; in older cordova-ios versions (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1105&quot;&gt;#1105&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/f67412f&quot;&gt;f67412f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): use &lt;code&gt;cordovaSettingForKey:&lt;/code&gt; instead of &lt;code&gt;objectForKey:&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1106&quot;&gt;#1106&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/540bfe3&quot;&gt;540bfe3&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): set minimum cordova-ios to 6.2.0 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1107&quot;&gt;#1107&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/15714f4&quot;&gt;15714f4&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): Use &lt;code&gt;CDVSettingsDictionary&lt;/code&gt; since cordova-ios 8 [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/b52242a&quot;&gt;b52242a&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): deprecation of &lt;code&gt;UIActivityIndicatorViewStyleGray&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1104&quot;&gt;#1104&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/6f413e0&quot;&gt;6f413e0&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): replace &lt;code&gt;UIBarStyleBlackOpaque&lt;/code&gt; with &lt;code&gt;UIBarStyleBlack&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1103&quot;&gt;#1103&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/d4ae06d&quot;&gt;d4ae06d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): remove use of &lt;code&gt;CDVScreenOrientationDelegate&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1101&quot;&gt;#1101&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/246f2a0&quot;&gt;246f2a0&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(ios): use auto layout to respect safe areas (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1099&quot;&gt;#1099&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/375c02b&quot;&gt;375c02b&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(iOS): IAB not showing up in apps using UIScenes (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1067&quot;&gt;#1067&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/e2d8429&quot;&gt;e2d8429&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(types): support beforeload listener signature in TypeScript defs (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1149&quot;&gt;#1149&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/e28ca69&quot;&gt;e28ca69&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Others&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;doc(readme): improve &lt;code&gt;addEventListener&lt;/code&gt; examples (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1142&quot;&gt;#1142&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/7a90dde&quot;&gt;7a90dde&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;doc(readme): update badges (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1140&quot;&gt;#1140&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/d922047&quot;&gt;d922047&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ios): remove pre ios 11 code in &lt;code&gt;show:withNoAnimate:&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1135&quot;&gt;#1135&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/8d2845b&quot;&gt;8d2845b&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ios): resolve variable &lt;code&gt;safeArea&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1121&quot;&gt;#1121&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/89cd5fe&quot;&gt;89cd5fe&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ios): Cleanup code (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1117&quot;&gt;#1117&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/6b28d2d&quot;&gt;6b28d2d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;refactor(ios): refactor code for clearing data (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1137&quot;&gt;#1137&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/f40f41b&quot;&gt;f40f41b&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;refactor(ios): adding toolbar items (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1124&quot;&gt;#1124&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/b83a9b7&quot;&gt;b83a9b7&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;refactor(ios): handle constraints in cases (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1125&quot;&gt;#1125&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/ddab657&quot;&gt;ddab657&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;refactor(ios): remove unused method &lt;code&gt;invertFrameIfNeeded&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1102&quot;&gt;#1102&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/dfce3c7&quot;&gt;dfce3c7&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;doc(ios): constraint warnings on iOS 26 and using &lt;code&gt;initWithBarButtonSystemItem&lt;/code&gt; (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1127&quot;&gt;#1127&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/42e12dd&quot;&gt;42e12dd&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: Remove unused inappbrowser.css file (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1038&quot;&gt;#1038&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/eac7303&quot;&gt;eac7303&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: bump to major 7.0.0-dev (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1156&quot;&gt;#1156&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/cc727aa&quot;&gt;cc727aa&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: bump version to 6.1.0-dev (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1108&quot;&gt;#1108&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/322182a&quot;&gt;322182a&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: incremented plugin version 6.0.1-dev [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/f27c663&quot;&gt;f27c663&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: add changelog from 6.0.1 (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1159&quot;&gt;#1159&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/92a53a9&quot;&gt;92a53a9&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: update npm package (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1134&quot;&gt;#1134&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/4f9d07d&quot;&gt;4f9d07d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: gh-action workflow, license header formatting &amp;amp; cleanups (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1095&quot;&gt;#1095&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/1e4ab4b&quot;&gt;1e4ab4b&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ci): add/update release workflows (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1157&quot;&gt;#1157&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/e1cb106&quot;&gt;e1cb106&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump @cordova/eslint-config to 6.0.0 w/ lint fixes (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1096&quot;&gt;#1096&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/4cf5c24&quot;&gt;4cf5c24&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(gitattributes): normalize line endings and binary detection (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1139&quot;&gt;#1139&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/675002f&quot;&gt;675002f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(INFRA): Set up default protection ruleset for default and release branches (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1151&quot;&gt;#1151&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/efd32a9&quot;&gt;efd32a9&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(workflow): update workflows to the latest one of cordova-paramedic (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1141&quot;&gt;#1141&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/3fdfc96&quot;&gt;3fdfc96&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;ci: remove osx (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1111&quot;&gt;#1111&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/c1eaf3b&quot;&gt;c1eaf3b&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;ci: sync workflow w/ paramedic (&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1068&quot;&gt;#1068&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/commit/dfde59d&quot;&gt;dfde59d&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Tue, 16 Jun 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/06/16/cordova-plugin-inappbrowser-7.0.0.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/06/16/cordova-plugin-inappbrowser-7.0.0.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        <category>plugins</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova Plugin InAppBrowser 6.0.1 With Fix For CVE-2026-47430 Released!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released an update to &lt;code&gt;cordova-plugin-inappbrowser&lt;/code&gt;!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-plugin-inappbrowser&quot;&gt;cordova-plugin-inappbrowser@6.0.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;p&gt;This is a small patch release that addresses the recently published vulnerability &lt;strong&gt;&lt;a href=&quot;https://www.cve.org/CVERecord?id=CVE-2026-47430&quot;&gt;CVE-2026-47430&lt;/a&gt;: Cordova Plugin InAppBrowser: iOS: Arbitrary Cordova callback IDs can be dispatched without validation from InAppBrowser WebViews&lt;/strong&gt;. Full details:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Severity: important&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Affected versions:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Cordova Plugin InAppBrowser (cordova-plugin-inappbrowser) 3.1.0 through 6.0.0&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Description:&lt;/p&gt;

&lt;h3&gt;Summary&lt;/h3&gt;

&lt;p&gt;The iOS implementation of &lt;code&gt;cordova-plugin-inappbrowser&lt;/code&gt; passes the &lt;code&gt;id&lt;/code&gt; field from a &lt;code&gt;WKScriptMessage&lt;/code&gt; body to &lt;code&gt;commandDelegate sendPluginResult:callbackId:&lt;/code&gt; with no format validation (&lt;code&gt;CDVWKInAppBrowser.m:560–574&lt;/code&gt;). Any web content loaded inside the InAppBrowser can fire any pending Cordova callback in the host app by posting a message whose &lt;code&gt;id&lt;/code&gt; field is a guessable or enumerated callback identifier. An attack abusing this weakness must be tailored to the specific plugins and callback IDs the host app uses. Though an attacker with knowledge of common Cordova plugin configurations could craft reusable payloads targeting widely-adopted plugins.&lt;/p&gt;

&lt;h3&gt;Impact&lt;/h3&gt;

&lt;p&gt;An unauthenticated remote attacker who controls content displayed in the InAppBrowser — via a URL the app opens (OAuth redirect, marketing link, deep-link target) or a network interception — can call &lt;code&gt;window.webkit.messageHandlers.cordova_iab.postMessage({id: '&amp;lt;victim-callback-id&amp;gt;', d: '...'})&lt;/code&gt; to fire callbacks belonging to any other installed Cordova plugin (Camera, Contacts, File, Geolocation). Cordova callback IDs follow the predictable format &lt;code&gt;&amp;lt;PluginName&amp;gt;&amp;lt;sequential-integer&amp;gt;&lt;/code&gt;, making enumeration feasible. Successful exploitation allows the attacker to spoof plugin results across trust boundaries — for example, injecting a forged camera approval, a fabricated contacts list, or a crafted file-read response.&lt;/p&gt;

&lt;p&gt;This issue affects Cordova Plugin InAppBrowser: from 3.1.0 through 6.0.0.&lt;/p&gt;

&lt;p&gt;Users are recommended to upgrade to version 6.0.1, which fixes the issue.&lt;/p&gt;

&lt;p&gt;References:&lt;/p&gt;

&lt;p&gt;https://www.cve.org/CVERecord?id=CVE-2026-47430&lt;/p&gt;

&lt;p&gt;Please report any issues you find on &lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/issues&quot;&gt;GitHub&lt;/a&gt;!&lt;/p&gt;

&lt;!--more--&gt;
&lt;h1&gt;Changes include:&lt;/h1&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1152&quot;&gt;GH-1152&lt;/a&gt; fix(ios): check callbackId with regex&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-plugin-inappbrowser/pull/1095&quot;&gt;GH-1095&lt;/a&gt; chore: gh-action workflow, license header formatting &amp;amp; cleanups&lt;/li&gt;
  &lt;li&gt;Fix npm audit issues&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Sun, 07 Jun 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/06/07/inappbrowser-release-6.0.1.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/06/07/inappbrowser-release-6.0.1.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        <category>plugins</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova iOS 8.1.0 is now available!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released &lt;code&gt;Cordova iOS 8.1.0&lt;/code&gt;! This is one of Cordova&amp;#39;s supported platforms for building iOS applications.&lt;/p&gt;

&lt;p&gt;This release contains fixes for several bugs that were reported against the 8.0.1 version.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-ios&quot;&gt;cordova-ios@8.1.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform remove ios
cordova platform add ios@8.1.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;To install:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform add ios@8.1.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Fix for Ionic WebView plugin&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Re-add an implementation of the deprecated &lt;code&gt;shouldOverrideLoadWithRequest:navigationType:&lt;/code&gt; selector because the Ionic WebView plugin relies on it.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Fix &lt;code&gt;/_app_file_/&lt;/code&gt; URLs not working&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;During refactoring of the &lt;strong&gt;URLSchemeTask&lt;/strong&gt; handler for cordova-ios 8, an error was introduced where &lt;code&gt;/_app_file_&lt;/code&gt; URLs were treated as being relative to the resources directory rather than as filesystem paths.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Fixes various build issues&lt;/strong&gt;&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;!--more--&gt;
&lt;h2&gt;Changes include:&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Fixes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1653&quot;&gt;GH-1653&lt;/a&gt; fix(actions): fix CDVURLSchemeHandlerTest warnings&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1652&quot;&gt;GH-1652&lt;/a&gt; fix(actions): IPhone 16e not found on macOS 26 for latest OS&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1640&quot;&gt;GH-1640&lt;/a&gt; fix: &lt;code&gt;NSInternalInconsistencyException: &quot;No response has been sent for this task&quot;&lt;/code&gt; - second attempt&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1637&quot;&gt;GH-1637&lt;/a&gt; fix(build): Target a generic &lt;strong&gt;iOS&lt;/strong&gt; simulator for building&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1632&quot;&gt;GH-1632&lt;/a&gt; fix(ionic): Add workaround for Ionic WebView plugin&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1618&quot;&gt;GH-1618&lt;/a&gt; fix(xcode): Fix library search paths for target&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1621&quot;&gt;GH-1621&lt;/a&gt; fix(xcode): Ensure we do NFD normalization on PRODUCT_NAME&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1616&quot;&gt;GH-1616&lt;/a&gt; fix(spm): Ensure the deployment target always gets set&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1606&quot;&gt;GH-1606&lt;/a&gt; fix(webview): Ensure scheme task is always finished&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1610&quot;&gt;GH-1610&lt;/a&gt; fix(scheme): Fix /&lt;em&gt;app_file&lt;/em&gt;/ URLs not working&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1612&quot;&gt;GH-1612&lt;/a&gt; fix(spm): Set deployment target in Package.swift&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1597&quot;&gt;GH-1597&lt;/a&gt; fix: ignore spm build artifacts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Others:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1650&quot;&gt;GH-1650&lt;/a&gt; chore: remove redundant Hello World template files&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1647&quot;&gt;GH-1647&lt;/a&gt; chore(deps): bump @xmldom/xmldom from 0.8.12 to 0.8.13&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1634&quot;&gt;GH-1634&lt;/a&gt; doc: &lt;code&gt;keepCallback&lt;/code&gt; and &lt;code&gt;setKeepCallbackAsBool:&lt;/code&gt; of &lt;code&gt;CDVPluginResult&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1646&quot;&gt;GH-1646&lt;/a&gt; chore(deps): bump lodash from 4.17.23 to 4.18.1&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1644&quot;&gt;GH-1644&lt;/a&gt; chore(deps): bump @xmldom/xmldom from 0.8.11 to 0.8.12&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1642&quot;&gt;GH-1642&lt;/a&gt; chore(deps): bump picomatch&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1639&quot;&gt;GH-1639&lt;/a&gt; chore: update package-lock&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1635&quot;&gt;GH-1635&lt;/a&gt; chore: Fix improperly ignored deprecation warning&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1633&quot;&gt;GH-1633&lt;/a&gt; chore: Bump patch level for ongoing dev work&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1628&quot;&gt;GH-1628&lt;/a&gt; chore: Fix missing licence headers&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1627&quot;&gt;GH-1627&lt;/a&gt; release(8.0.1): Update release notes and version&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1623&quot;&gt;GH-1623&lt;/a&gt; chore(ci): draft release&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1624&quot;&gt;GH-1624&lt;/a&gt; chore: cleanup license headers&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1625&quot;&gt;GH-1625&lt;/a&gt; chore: add DEVELOPMENT.md &amp;amp; cleanup &lt;code&gt;README&lt;/code&gt;.md&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1622&quot;&gt;GH-1622&lt;/a&gt; refactor(versions): Refactor version code for test reliability&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1619&quot;&gt;GH-1619&lt;/a&gt; chore(deps): Update to latest jasmine &amp;amp; c8 versions&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1614&quot;&gt;GH-1614&lt;/a&gt; doc(readme): improve badges&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1601&quot;&gt;GH-1601&lt;/a&gt; chore: Remove compileBitcode from export options&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1611&quot;&gt;GH-1611&lt;/a&gt; chore: set swift-tools-version to 5.9&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1599&quot;&gt;GH-1599&lt;/a&gt; chore(deps): bump lodash from 4.17.21 to 4.17.23&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1598&quot;&gt;GH-1598&lt;/a&gt; Add missing trailing new line&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1592&quot;&gt;GH-1592&lt;/a&gt; doc(readme): add minimum &lt;strong&gt;iOS&lt;/strong&gt; version&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1591&quot;&gt;GH-1591&lt;/a&gt; doc(readme): add Link to &lt;strong&gt;iOS&lt;/strong&gt; Platform Guide&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1588&quot;&gt;GH-1588&lt;/a&gt; chore: update release audit workflow &amp;amp; license headers&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Sun, 31 May 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/05/31/cordova-ios-8.1.0.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/05/31/cordova-ios-8.1.0.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Network Information Plugin 3.1.0 Released!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released an update for &lt;code&gt;cordova-plugin-network-information&lt;/code&gt;!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-plugin-network-information&quot;&gt;cordova-plugin-network-information@3.1.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova plugin remove cordova-plugin-network-information
cordova plugin add cordova-plugin-network-information@3.1.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;h3&gt;Features&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;feat(android): add 5G check and test (&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/pull/172&quot;&gt;#172&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;feat(ios): add 5G check (&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/pull/159&quot;&gt;#159&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Fixes&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;fix(ios): fix deprecation warnings for iOS 12+ (&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/pull/169&quot;&gt;#169&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;fix(ios): Remove redundant &lt;code&gt;#import &amp;lt;netinet6/in6.h&amp;gt;&lt;/code&gt; for Xcode 26.4 compatibility (&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/pull/166&quot;&gt;#166&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Other&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;chore: various updates (&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/pull/177&quot;&gt;#177&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;chore: update asf config (&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/pull/161&quot;&gt;#161&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;chore(dev-dep): bump @cordova/eslint-config to 6.0.1 w/ fixes (&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/pull/171&quot;&gt;#171&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/commit/952bd51&quot;&gt;952bd51&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For a full list of changes, see the &lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/blob/master/RELEASENOTES.md#310&quot;&gt;release notes&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Please report any issues you find at &lt;a href=&quot;https://github.com/apache/cordova-plugin-network-information/issues&quot;&gt;GitHub&lt;/a&gt;!&lt;/p&gt;
</description>
        <pubDate>Sat, 16 May 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/05/16/cordova-plugin-network-information-3.1.0.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/05/16/cordova-plugin-network-information-3.1.0.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova iOS 8.0.1 is now available!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released &lt;code&gt;Cordova iOS 8.0.1&lt;/code&gt;! This is one of Cordova&amp;#39;s supported platforms for building iOS applications.&lt;/p&gt;

&lt;p&gt;This release contains fixes for several bugs that were reported against the 8.0.0 version.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-ios&quot;&gt;cordova-ios@8.0.1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform remove ios
cordova platform add ios@8.0.1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;To install:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform add ios@8.0.1
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Fixed search paths for plugin libraries/frameworks&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Plugins that included frameworks as embedded libraries were causing app builds to fail due to Xcode using the wrong path when trying to link the framework bundle. Xcode should now look for these frameworks at the correct path.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Fix for local file &lt;code&gt;/_app_file_/&lt;/code&gt; URLs not loading&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;URLs returned by &lt;code&gt;window.WkWebView.convertFilePath()&lt;/code&gt; and the File plugin&amp;#39;s &lt;code&gt;FileEntry.getUrl()&lt;/code&gt; were not being handled properly by the WebView to return file contents from the device filesystem. This should now work as expected, matching the behaviour from earlier cordova-ios versions.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Fix crash on cancelled WebView requests&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;When serving content from a custom scheme, if a request was started and cancelled before it finished loading, there was a chance the app could crash. We now ensure that scheme requests are properly closed when cancelled and avoid race conditions.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Ensure Swift package deployment targets are set&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;If a custom deployment target was set and a plugin relied on that deployment target, it was possible for Xcode to report errors due to the Swift package manager not reflecting that updated deployment target. We now propagate the &lt;code&gt;&amp;lt;preference name=&quot;deployment-target&quot;&amp;gt;&lt;/code&gt; value to the Package.swift file that references plugins.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Ensure consistent normalization of the app name&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;If an app name contained non-ASCII characters, Xcode could produce an app bundle that failed App Store validation checks. By ensuring the app product name is consistently normalized, apps should pass validation regardless of the characters in their name.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;!--more--&gt;
&lt;h2&gt;Changes include:&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Fixes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1618&quot;&gt;GH-1618&lt;/a&gt; fix(xcode): Fix library search paths for target&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1621&quot;&gt;GH-1621&lt;/a&gt; fix(xcode): Ensure we do NFD normalization on &lt;code&gt;PRODUCT_NAME&lt;/code&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1616&quot;&gt;GH-1616&lt;/a&gt; fix(spm): Ensure the deployment target always gets set&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1606&quot;&gt;GH-1606&lt;/a&gt; fix(webview): Ensure scheme task is always finished&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1610&quot;&gt;GH-1610&lt;/a&gt; fix(scheme): Fix &lt;code&gt;/_app_file_/&lt;/code&gt; URLs not working&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1612&quot;&gt;GH-1612&lt;/a&gt; fix(spm): Set deployment target in Package.swift&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1597&quot;&gt;GH-1597&lt;/a&gt; fix(spm): git-ignore Swift Package Manager build artifacts&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Others:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1614&quot;&gt;GH-1614&lt;/a&gt; doc(readme): improve badges&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1622&quot;&gt;GH-1622&lt;/a&gt; refactor(versions): Refactor version code for test reliability&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1619&quot;&gt;GH-1619&lt;/a&gt; chore(deps): Update to latest jasmine &amp;amp; c8 versions&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1623&quot;&gt;GH-1623&lt;/a&gt; chore(ci): draft release&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1624&quot;&gt;GH-1624&lt;/a&gt; chore: cleanup license headers&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1625&quot;&gt;GH-1625&lt;/a&gt; chore: add DEVELOPMENT.md &amp;amp; cleanup README.md&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1598&quot;&gt;GH-1598&lt;/a&gt; Add missing trailing new line&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1601&quot;&gt;GH-1601&lt;/a&gt; chore: Remove compileBitcode from export options&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1611&quot;&gt;GH-1611&lt;/a&gt; chore: set swift-tools-version to 5.9&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1599&quot;&gt;GH-1599&lt;/a&gt; chore(deps): bump lodash from 4.17.21 to 4.17.23&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1592&quot;&gt;GH-1592&lt;/a&gt; doc(readme): add minimum &lt;strong&gt;iOS&lt;/strong&gt; version&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1591&quot;&gt;GH-1591&lt;/a&gt; doc(readme): add Link to &lt;strong&gt;iOS&lt;/strong&gt; Platform Guide&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-ios/pull/1588&quot;&gt;GH-1588&lt;/a&gt; chore: update release audit workflow &amp;amp; license headers&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Thu, 12 Mar 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/03/12/cordova-ios-8.0.1.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/03/12/cordova-ios-8.0.1.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova Android 15.0.0 Released!</title>
        <description>&lt;p&gt;We are happy to announce that we have just released &lt;code&gt;Cordova Android 15.0.0&lt;/code&gt;! This is one of Cordova&amp;#39;s supported platforms for building Android applications.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova-android&quot;&gt;cordova-android@15.0.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform remove android
cordova platform add android@15.0.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;To install:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;cordova platform add android@15.0.0
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;h3&gt;BREAKING CHANGES&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Increased Target SDK&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;This release has increased the target SDK to 36 (Android 15).&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Project Dependencies&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;The following Gradle dependencies were bumpped:&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;Gradle: &lt;code&gt;8.14.2&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;Android Gradle Plugin (AGP): &lt;code&gt;8.10.1&lt;/code&gt;&lt;/li&gt;
    &lt;/ul&gt;

    &lt;p&gt;Additionally, the following libraries have been upgraded:&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;AndroidX App Compat - &lt;code&gt;1.7.1&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;AndroidX WebKit - &lt;code&gt;1.14.0&lt;/code&gt;&lt;/li&gt;
    &lt;/ul&gt;

    &lt;p&gt;If you or a plugin has made changes to any of the following configuration preferences, the build results might not match the expected outcomes with this release:&lt;/p&gt;

    &lt;table&gt;
      &lt;thead&gt;
        &lt;tr&gt;
          &lt;th&gt;Preference&lt;/th&gt;
          &lt;th&gt;Default Value&lt;/th&gt;
        &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;android-minSdkVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;24&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;android-maxSdkVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;&lt;em&gt;Not set&lt;/em&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;android-targetSdkVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;36&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;android-compileSdkVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;&lt;em&gt;android-targetSdkVersion configured value&lt;/em&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;android-buildToolsVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;36.0.0&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;GradleVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;8.14.2&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;AndroidGradlePluginVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;8.10.1&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;GradlePluginKotlinVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;2.1.21&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;AndroidXAppCompatVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;1.7.1&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;AndroidXWebKitVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;1.14.0&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
          &lt;td&gt;&lt;code&gt;GradlePluginGoogleServicesVersion&lt;/code&gt;&lt;/td&gt;
          &lt;td&gt;4.4.2&lt;/td&gt;
        &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;

    &lt;p&gt;Please take note of the versions that have been updated in this release. If you have manually modified any of these values, it is recommended to review and update the preference values accordingly.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Increased Android Studio Requirement&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;With the increase of Android Gradle Plugin, &amp;quot;&lt;strong&gt;Android Studio Meerkat Feature Drop&lt;/strong&gt;&amp;quot; is the minimum required version for building and running projects in Android Studio. This aligns with the &lt;a href=&quot;https://developer.android.com/build/releases/about-agp#android_gradle_plugin_and_android_studio_compatibility&quot;&gt;Android Gradle plugin and Android Studio compatibility&lt;/a&gt; documentation.&lt;/p&gt;

    &lt;p&gt;Newer version of Android Studio are available but comes with untested version of Gradle. It is recommended to run &lt;code&gt;cordova build android&lt;/code&gt; after adding the platform and before opening the project in Android Studio to ensure that the project sets up a supported version of Gradle.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Required Build Tools&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;To use &lt;code&gt;cordova-android@15.0.0&lt;/code&gt;, SDK Platform &lt;code&gt;36&lt;/code&gt; and SDK Build Tools &lt;code&gt;36.0.0&lt;/code&gt; must be installed. Older build tools version can be uninstalled if older versions of cordova-android is no longer used in any of your projects.&lt;/p&gt;

    &lt;p&gt;&lt;strong&gt;Upgrade with Command-line tools:&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;The recommended way to install SDK Platform 36 and SDK Build Tools 36.0.0 is by using &lt;code&gt;sdkmanager&lt;/code&gt;, which is part of Android&amp;#39;s &lt;a href=&quot;https://developer.android.com/tools/&quot;&gt;Command-line tools&lt;/a&gt; package. The command-line tools is useful as it does not require Android Studio.&lt;/p&gt;

    &lt;p&gt;At the time of writing, &lt;strong&gt;version 20&lt;/strong&gt; of the Command-line tools was downloaded from Android Studio&amp;#39;s SDK Manager and used. It can also be downloaded from the &lt;a href=&quot;https://developer.android.com/studio#command-line-tools-only&quot;&gt;Android Developers&lt;/a&gt; website.&lt;/p&gt;

    &lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  sdkmanager &lt;span class=&quot;s1&quot;&gt;'build-tools;36.0.0'&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;'platforms;android-36'&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;You may need to run the &lt;code&gt;update&lt;/code&gt; flag first:&lt;/p&gt;

    &lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;  sdkmanager &lt;span class=&quot;nt&quot;&gt;--update&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;&lt;strong&gt;Upgrade with Android Studio:&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;To install SDK Platform 36:&lt;/p&gt;

    &lt;ol&gt;
      &lt;li&gt;Open Android Studio&amp;#39;s &lt;strong&gt;SDK Manager&lt;/strong&gt;:&lt;/li&gt;
      &lt;li&gt;Click on &lt;code&gt;SDK Platforms&lt;/code&gt; tab&lt;/li&gt;
      &lt;li&gt;Check &lt;code&gt;Android 16.0 (&quot;Baklava&quot;)&lt;/code&gt; which has the &lt;code&gt;API Level&lt;/code&gt; of &lt;code&gt;36&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;Click &lt;code&gt;Apply&lt;/code&gt;&lt;/li&gt;
    &lt;/ol&gt;

    &lt;p&gt;&lt;img src=&quot;/static/img/blog/2026/cordova-android-16-platform-sdk-36.png&quot; style=&quot;width: 100%;&quot; alt=&quot;Android SDK Platform&quot; /&gt;&lt;/p&gt;

    &lt;p&gt;To install SDK Build Tools 36.0.0:&lt;/p&gt;

    &lt;ol&gt;
      &lt;li&gt;Open Android Studio&amp;#39;s &lt;strong&gt;SDK Manager&lt;/strong&gt;:&lt;/li&gt;
      &lt;li&gt;Click on &lt;code&gt;SDK Tools&lt;/code&gt; tab&lt;/li&gt;
      &lt;li&gt;Check &lt;code&gt;Show Package Details&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;Expand &lt;code&gt;Android SDK Build-Tools&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;Check &lt;code&gt;36.0.0&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;Click &lt;code&gt;Apply&lt;/code&gt;&lt;/li&gt;
    &lt;/ol&gt;

    &lt;p&gt;&lt;img src=&quot;/static/img/blog/2026/cordova-android-16-sdk-build-tools-3600.png&quot; style=&quot;width: 100%;&quot; alt=&quot;Android SDK Build Tools&quot; /&gt;&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Increased Node.js Engine Requirement&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;The Node.js engine requirement in this release has been increased to version 20.17.0 or later.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Support Previous Non-Edge-to-Edge Functionality&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;By default, Android 16 enforces Edge-to-Edge with no way to disable it.&lt;/p&gt;

    &lt;p&gt;In this major release, Apache Cordova has improved the system bar functionality to mimic the previous non-Edge-to-Edge behavior, allowing app developers to continue supporting a status bar.&lt;/p&gt;

    &lt;p&gt;Users can still opt in to the Edge-to-Edge feature by using the &lt;code&gt;AndroidEdgeToEdge&lt;/code&gt; preference flag introduced in Cordova-Android 14.&lt;/p&gt;

    &lt;p&gt;&lt;strong&gt;IMPORTANT NOTE:&lt;/strong&gt; The StatusBar plugin is no longer required. Status bar functionality has been integrated as an internal plugin to maintain the original behavior. The StatusBar JavaScript API is available:&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;
        &lt;p&gt;&lt;code&gt;window.statusbar.visible&lt;/code&gt; — A property that controls the visibility of the status bar. It accepts a boolean value (&lt;code&gt;true&lt;/code&gt; or &lt;code&gt;false&lt;/code&gt;).&lt;/p&gt;
      &lt;/li&gt;
      &lt;li&gt;
        &lt;p&gt;&lt;code&gt;window.statusbar.setBackgroundColor('#AARRGGBB')&lt;/code&gt; — A method that changes the background color of the status bar. It accepts a hexadecimal color string.&lt;/p&gt;
      &lt;/li&gt;
    &lt;/ul&gt;

    &lt;p&gt;Previous status bar preferences are reused. Preferences are read in the following priority order:&lt;/p&gt;

    &lt;ul&gt;
      &lt;li&gt;&lt;code&gt;StatusBarBackgroundColor&lt;/code&gt;&lt;/li&gt;
      &lt;li&gt;&lt;code&gt;BackgroundColor&lt;/code&gt;
        &lt;ul&gt;
          &lt;li&gt;Depending on the OS version, the &lt;code&gt;BackgroundColor&lt;/code&gt; preference may also change the navigation/gesture bar.&lt;/li&gt;
        &lt;/ul&gt;
      &lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Support Night &amp;amp; Day Theme&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Added partial support for automatically switching between night and day themes based on system settings when SplashScreen, StatusBar, or background-related preferences are not set.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Fixes&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Back button override on API 36+&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Resolved an issue where Android API 36 crashes when the hardware back button is pressed.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Apply &lt;code&gt;repositories.gradle&lt;/code&gt; for &lt;code&gt;cordova.gradle&lt;/code&gt; dependencies&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Resolved an issue where users were unable to override repository settings for build-related Gradle dependencies.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Handle uninstalling multiple plugin assets&lt;/strong&gt;&lt;/p&gt;

    &lt;p&gt;Resolved an issue where plugins with multiple defined &lt;code&gt;&amp;lt;assets&amp;gt;&lt;/code&gt; were not removed properly during uninstall.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;!--more--&gt;
&lt;h1&gt;Changes include:&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Breaking Changes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;feat!: support previous non-E2E (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1817&quot;&gt;#1817&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/76aa9380&quot;&gt;76aa9380&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat!: add partial night &amp;amp; day theme support (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1818&quot;&gt;#1818&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/60d28420&quot;&gt;60d28420&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat!: bump kotlin@2.1.21 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1814&quot;&gt;#1814&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/72e71488&quot;&gt;72e71488&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat!: bump Gradle@8.14.2 &amp;amp; AGP@8.10.1 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1811&quot;&gt;#1811&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/c25ed278&quot;&gt;c25ed278&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat!: bump sdk &amp;amp; build tools to 36 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1810&quot;&gt;#1810&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/d8f6f377&quot;&gt;d8f6f377&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat!: remove unused getASPath.bat file (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1808&quot;&gt;#1808&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/7a47fe01&quot;&gt;7a47fe01&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore!: bump dependencies &amp;amp; update node engine requirement (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1887&quot;&gt;#1887&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/b4eadcce&quot;&gt;b4eadcce&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore!: update dependencies (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1843&quot;&gt;#1843&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/488c4987&quot;&gt;488c4987&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore!: update template defaults (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1837&quot;&gt;#1837&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/e4457f7f&quot;&gt;e4457f7f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(npm)!: bump cordova-common@6.0.0 w/ rebuilt package-lock.json (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1835&quot;&gt;#1835&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/8742cfe4&quot;&gt;8742cfe4&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;feat: Allows additional settings to be included on settings.gradle (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1819&quot;&gt;#1819&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/5bca218e&quot;&gt;5bca218e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat: replace nyc with c8 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1844&quot;&gt;#1844&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/7d7f5110&quot;&gt;7d7f5110&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat: allow disabling splash screen for embedded Cordova (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1824&quot;&gt;#1824&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/c2cf589d&quot;&gt;c2cf589d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat: AndroidShowDeprecations preference flag (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1822&quot;&gt;#1822&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/0190d2e3&quot;&gt;0190d2e3&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat: androidx.appcompat:appcompat@1.7.1 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1813&quot;&gt;#1813&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/36bee664&quot;&gt;36bee664&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat: androidx.webkit:webkit@1.14.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1812&quot;&gt;#1812&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/4dcfc361&quot;&gt;4dcfc361&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;feat(CallbackContext): add success method for boolean (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1864&quot;&gt;#1864&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/6b76757c&quot;&gt;6b76757c&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Fixes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;fix: Potential NPE when handling generic exceptions (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1878&quot;&gt;#1878&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/7a353fe8&quot;&gt;7a353fe8&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: opaque navigation bar in edge to edge (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1867&quot;&gt;#1867&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/eaca570c&quot;&gt;eaca570c&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: cordova requirements command and SDK lookup based on tools (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1877&quot;&gt;#1877&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/76bac55f&quot;&gt;76bac55f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: re-expose and support pollOnce (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1854&quot;&gt;#1854&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/655aa0a5&quot;&gt;655aa0a5&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: edge to edge/fullscreen margins (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1847&quot;&gt;#1847&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/360be21e&quot;&gt;360be21e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: Deprecation warning in PluginManager for using Class.newInstance (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1823&quot;&gt;#1823&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/eb5fe4fb&quot;&gt;eb5fe4fb&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: Back button override on API 36+ (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1831&quot;&gt;#1831&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/46af3114&quot;&gt;46af3114&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: gradle deprecation warnings about property assignment (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1821&quot;&gt;#1821&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/df36c7a2&quot;&gt;df36c7a2&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: replace deprecated fs.F_OK with fs.constants.F_OK (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1820&quot;&gt;#1820&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/b7923261&quot;&gt;b7923261&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix: apply repositories.gradle for cordova.gradle dependencies (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1816&quot;&gt;#1816&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/cab5c5b7&quot;&gt;cab5c5b7&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(plugins): remove from platformWWW by default (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1807&quot;&gt;#1807&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/f0e88856&quot;&gt;f0e88856&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(plugins): rename &amp;amp; match removeFileF logic with other platforms (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1806&quot;&gt;#1806&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/5dc9c728&quot;&gt;5dc9c728&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(plugins): handle uninstalling multiple plugin assets (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1805&quot;&gt;#1805&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/08b8a954&quot;&gt;08b8a954&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(statusbar): inject script block to compute color &amp;amp; replace padStart w/ logic supported on SDK 24 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1853&quot;&gt;#1853&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/52578ae7&quot;&gt;52578ae7&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;fix(windows): Escape back-slashes for gradle config jdk path (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1876&quot;&gt;#1876&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/fb562f4e&quot;&gt;fb562f4e&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Chores:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;chore: add license header to template gitignore (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1893&quot;&gt;#1893&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/ffa77cad&quot;&gt;ffa77cad&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: update RELEASENOTES.md (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1892&quot;&gt;#1892&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/5003275b&quot;&gt;5003275b&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: license, license headers &amp;amp; CI &amp;amp; draft workflow improvements (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1891&quot;&gt;#1891&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/d426e0ff&quot;&gt;d426e0ff&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: update changelog (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1890&quot;&gt;#1890&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/aaf46bb2&quot;&gt;aaf46bb2&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ci): get npm package filename from json output (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1889&quot;&gt;#1889&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/7fbdee1e&quot;&gt;7fbdee1e&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: minor changes to DEVELOPMENT.md (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1884&quot;&gt;#1884&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/edf34400&quot;&gt;edf34400&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: add DEVELOPMENT.md &amp;amp; cleanup README.md (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1883&quot;&gt;#1883&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/31364a97&quot;&gt;31364a97&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: update release audit workflow &amp;amp; license headers (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1870&quot;&gt;#1870&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/d7afba0a&quot;&gt;d7afba0a&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: bump 15.0.0-dev (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1803&quot;&gt;#1803&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/00744c4f&quot;&gt;00744c4f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore: bump version 14.0.2-dev [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/872d9887&quot;&gt;872d9887&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(ci): draft release (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1882&quot;&gt;#1882&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/347e2add&quot;&gt;347e2add&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump js-yaml from 4.1.0 to 4.1.1 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1869&quot;&gt;#1869&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/ebe6890d&quot;&gt;ebe6890d&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps-dev): bump tmp from 0.2.3 to 0.2.4 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1834&quot;&gt;#1834&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/af1ae68a&quot;&gt;af1ae68a&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump lodash from 4.17.21 to 4.17.23 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1879&quot;&gt;#1879&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/2ea3a731&quot;&gt;2ea3a731&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(deps): bump glob from 10.4.5 to 10.5.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1868&quot;&gt;#1868&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/172b8448&quot;&gt;172b8448&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;chore(readme): added nightly build section (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1873&quot;&gt;#1873&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/eaf875b0&quot;&gt;eaf875b0&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Other:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;ci: use macos-15 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1829&quot;&gt;#1829&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/1204a793&quot;&gt;1204a793&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;ci: update workflow - added node 24, permission scoping &amp;amp; codecov pinning (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1804&quot;&gt;#1804&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/60244658&quot;&gt;60244658&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;ci(release-audit): use latest apache-rat-action (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1809&quot;&gt;#1809&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/6b8e819f&quot;&gt;6b8e819f&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;ci(workflow): update release-audit &amp;amp; license config (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1828&quot;&gt;#1828&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/bf0ba3dd&quot;&gt;bf0ba3dd&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;dep(npm): bump @cordova/eslint-config@6.0.0 (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1830&quot;&gt;#1830&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/56afb708&quot;&gt;56afb708&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;doc(readme): update github and npm version badges (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1872&quot;&gt;#1872&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/8c8fbc9a&quot;&gt;8c8fbc9a&lt;/a&gt;]&lt;/li&gt;
  &lt;li&gt;test(plugins): remove old deprecated android_studio option (&lt;a href=&quot;https://github.com/apache/cordova-android/pull/1815&quot;&gt;#1815&lt;/a&gt;) [&lt;a href=&quot;https://github.com/apache/cordova-android/commit/484c60e4&quot;&gt;484c60e4&lt;/a&gt;]&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Fri, 06 Mar 2026 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2026/03/06/cordova-android-15.0.0.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2026/03/06/cordova-android-15.0.0.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        
        <category>announcements</category>
        
      </item>
    
      <item>
        <title>Cordova CLI 13.0.0 Released!</title>
        <description>&lt;p&gt;We are happy to announce that &lt;code&gt;cordova@13.0.0&lt;/code&gt; has been released! This is the latest version of the Cordova command-line interface (CLI) used for creating and building Cordova apps.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.npmjs.com/package/cordova/v/13.0.0&quot;&gt;cordova@13.0.0 on npm&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;To upgrade a global installation:&lt;/strong&gt;&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;npm uninstall &lt;span class=&quot;nt&quot;&gt;-g&lt;/span&gt; cordova
npm &lt;span class=&quot;nb&quot;&gt;install&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;-g&lt;/span&gt; cordova@latest
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Note: If you are installing Cordova locally in a project (not globally), simply omit the &lt;code&gt;-g&lt;/code&gt; flag.&lt;/p&gt;

&lt;h2&gt;Release Highlights&lt;/h2&gt;

&lt;p&gt;The most notable changes in this major release include:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Updated npm dependencies.&lt;/li&gt;
  &lt;li&gt;Increased Node.js engine requirement to &lt;code&gt;&amp;gt;=20.17.0 || &amp;gt;=22.9.0&lt;/code&gt;.&lt;/li&gt;
  &lt;li&gt;Removed &lt;code&gt;telemetry&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One of the main dependencies that was updated is &lt;strong&gt;cordova-lib&lt;/strong&gt;, which for provides the core CLI functionality for managing platforms and plugins, including adding and removing them. Among the breaking changes in this release, the &lt;code&gt;cordova serve&lt;/code&gt; command has been removed.&lt;/p&gt;

&lt;p&gt;We recommend checking out the following blog posts for updates on related packages that also apply to Cordova CLI:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://cordova.apache.org/announcements/2025/11/05/cordova-lib-13.0.0.html&quot;&gt;Cordova Lib 13.0.0&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://cordova.apache.org/announcements/2025/10/22/cordova-create-6.0.0.html&quot;&gt;Cordova Create 6.0.0&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://cordova.apache.org/announcements/2025/08/29/cordova-fetch-5.0.0.html&quot;&gt;Cordova Fetch 5.0.0&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://cordova.apache.org/announcements/2025/08/29/cordova-app-hello-world-7.0.0.html&quot;&gt;Cordova App Hello World 7.0.0&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://cordova.apache.org/announcements/2025/08/09/cordova-common-6.0.0.html&quot;&gt;Cordova Common 6.0.0&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Please report any issues you find by following the &lt;a href=&quot;https://github.com/apache/cordova#filing-a-bug&quot;&gt;How to File a Bug&lt;/a&gt; guide!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/issues&quot;&gt;Cordova CLI - Issue Tracker&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-lib/issues&quot;&gt;Cordova Lib - Issue Tracker&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-create/issues&quot;&gt;Cordova Create - Issue Tracker&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-fetch/issues&quot;&gt;Cordova Fetch - Issue Tracker&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-serve/issues&quot;&gt;Cordova Serve - Issue Tracker&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-common/issues&quot;&gt;Cordova Common - Issue Tracker&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;!--more--&gt;
&lt;h1&gt;Changes include:&lt;/h1&gt;

&lt;p&gt;&lt;strong&gt;Breaking Changes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/678&quot;&gt;GH-678&lt;/a&gt; feat!: bump dependencies &amp;amp; node engine requirement&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/633&quot;&gt;GH-633&lt;/a&gt; feat!: remove telemetry feature&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/672&quot;&gt;GH-672&lt;/a&gt; chore(npm)!: bump various npm packages&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/666&quot;&gt;GH-666&lt;/a&gt; chore!: bump node requirement &amp;amp; npm dependencies&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/642&quot;&gt;GH-642&lt;/a&gt; chore!: Prepare for next major&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Fixes:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/662&quot;&gt;GH-662&lt;/a&gt; fix: bump @babel/helpers&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/640&quot;&gt;GH-640&lt;/a&gt; fix: remove potential error when setting exit code&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Others:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/679&quot;&gt;GH-679&lt;/a&gt; chore: update release audit workflow &amp;amp; license headers&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/677&quot;&gt;GH-677&lt;/a&gt; chore(deps-dev): bump js-yaml from 4.1.0 to 4.1.1&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/676&quot;&gt;GH-676&lt;/a&gt; chore(deps): bump glob from 10.4.5 to 10.5.0&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/673&quot;&gt;GH-673&lt;/a&gt; chore: license headers&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/671&quot;&gt;GH-671&lt;/a&gt; chore(deps): bump tmp from 0.2.3 to 0.2.4&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/668&quot;&gt;GH-668&lt;/a&gt; chore(coverage): Move from nyc to c8 for code coverage&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/667&quot;&gt;GH-667&lt;/a&gt; chore(deps): bump on-headers and compression&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/665&quot;&gt;GH-665&lt;/a&gt; chore(deps-dev): bump brace-expansion from 1.1.11 to 1.1.12&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/658&quot;&gt;GH-658&lt;/a&gt; chore(deps): bump systeminformation from 5.22.11 to 5.23.8&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/657&quot;&gt;GH-657&lt;/a&gt; chore(deps): bump path-to-regexp and express&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/654&quot;&gt;GH-654&lt;/a&gt; chore(deps): bump cross-spawn from 7.0.3 to 7.0.6&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/655&quot;&gt;GH-655&lt;/a&gt; chore(ci): Add code scanning &amp;amp; fix dependabot failures&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/646&quot;&gt;GH-646&lt;/a&gt; chore(deps): bump micromatch from 4.0.7 to 4.0.8&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/652&quot;&gt;GH-652&lt;/a&gt; chore(deps): bump cookie and express&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/643&quot;&gt;GH-643&lt;/a&gt; chore: Update dependencies&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/637&quot;&gt;GH-637&lt;/a&gt; chore(deps): bump express from 4.18.2 to 4.19.2&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/639&quot;&gt;GH-639&lt;/a&gt; chore(deps): bump tar from 6.2.0 to 6.2.1&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/641&quot;&gt;GH-641&lt;/a&gt; chore(deps): bump braces from 3.0.2 to 3.0.3&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/635&quot;&gt;GH-635&lt;/a&gt; chore(deps): bump ip from 2.0.0 to 2.0.1&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/631&quot;&gt;GH-631&lt;/a&gt; chore: Rolled dependencies to the latest non-breaking versions&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/670&quot;&gt;GH-670&lt;/a&gt; ci: various workflow improvements&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/669&quot;&gt;GH-669&lt;/a&gt; ci(workflow): update release-audit &amp;amp; license config&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/656&quot;&gt;GH-656&lt;/a&gt; ci: use apache-rat-action@v1 (tag)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/638&quot;&gt;GH-638&lt;/a&gt; ci: update codecov@v4 w/ token&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/636&quot;&gt;GH-636&lt;/a&gt; ci: update release audit workflow&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/630&quot;&gt;GH-630&lt;/a&gt; ci(gh-action): add Apache RAT &amp;amp; package license checker workflow&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/554&quot;&gt;GH-554&lt;/a&gt; doc(create): update default values&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/428&quot;&gt;GH-428&lt;/a&gt; doc: update &lt;code&gt;README&lt;/code&gt;.md&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://github.com/apache/cordova-cli/pull/616&quot;&gt;GH-616&lt;/a&gt; doc: update &amp;amp; refactor cli reference&lt;/li&gt;
&lt;/ul&gt;
</description>
        <pubDate>Tue, 25 Nov 2025 00:00:00 +0000</pubDate>
        <link>https://cordova.apache.org/announcements/2025/11/25/cordova-cli-13.0.0.html</link>
        <guid isPermaLink="true">https://cordova.apache.org/announcements/2025/11/25/cordova-cli-13.0.0.html</guid>
        
        <category>news</category>
        
        <category>releases</category>
        
        
        <category>announcements</category>
        
      </item>
    
  </channel>
</rss>
