We are happy to announce that we have just released Cordova iOS 6.0.0
! This is Cordova's official platform for building iOS mobile applications.
Release Highlights
To upgrade:
cordova platform remove ios
cordova platform add ios@6.0.0
The most notable changes in this major release are:
-
Added Xcode 11 compatibility and bumped minimum iOS version to 11.0
As of April 2020, Apple requires all app store submissions to be built with Xcode 11 and target the iOS 13 SDK.
Apple has deprecated the
mediaPlaybackRequiresUserAction
property in iOS 8.0–9.0 and replaced it withmediaTypesRequiringUserActionForPlayback
. Apple has also deprecated themediaPlaybackAllowsAirPlay
property in iOS iOS 8.0-9.0 and replaced it withallowsAirPlayForMediaPlayback
.If you have configured any of these properties in your project's
config.xml
file, it is recommended that you update with the new preferences optionsMediaTypesRequiringUserActionForPlayback
orAllowsAirPlayForMediaPlayback
.Additionally, the values for
MediaTypesRequiringUserActionForPlayback
has changed. It use to be aboolean
value but is now astring
value of eitherall
,audio
,video
, ornone
. -
Moved
WKWebView
support into Cordova-iOS and removedUIWebView
codeDue to this change, the
cordova-plugin-wkwebview-engine
plugin is obsolete and will not work with this release. If you have this plugin installed, it is safe to remove withcordova plugin remove cordova-plugin-wkwebview-engine
.Additionaly,
WKURLSchemeHandler
support has been introduced with this release. Using a custom scheme to serve your app content through fixes CORS issues that exist because of the strict security policies thatWKWebView
has applied to thefile
scheme. You can easily configure your Cordova project to use a custom scheme by setting the preference optionsscheme
andhostname
in theconfig.xml
file.<preference name="scheme" value="app" /> <preference name="hostname" value="localhost" />
It is important to know that with the introduction of
WKURLSchemeHandler
, iOS 10 support has been dropped. -
Integrated
SplashScreen
plugin code & replaced Launch Images with Launch StoryboardsIf you're migrating from launch images, details on how to set up images for Launch Storyboards can be found in the SplashScreen documentation.
- Fixed overwriting the bundle identifier when there are multiple Xcode build targets
-
Bumped minimum CocoaPods version requirements to 1.8.0
Since CocoaPods 1.7.0, CDN support was introduced. It was later finalized in 1.7.2 but was not configured as the default until 1.8.0. Using CDN to fetch podspecs over the traditional GitHub repo provides a huge performance enhancement. With CDN, Cordova users no longer need to wait for the CocoaPod's GH repo to be synced. Building a project with pods and a fresh CocoaPods installation takes under a minute now.
You can take a look at their demonstration video here to see how fast CocoaPods has become with CDN.
Please report any issues you find at issues.cordova.io!
Changes include:
- GH-875 fix: remove
q
leftover - chore(
audit-license-headers
): add & correct license - GH-874 chore: cleanup & prep for 6.0.0 release
- GH-873 chore: remove unassigned splash image
- GH-872 chore: remove migrate
English.lproj
deprecated warning - GH-871 chore: enable base internalization for
CordovaLib
- GH-866 refactor: default to file scheme
- GH-852 ci: use github actions
- GH-869 refactor: bump eslint w/ lint fix & rebuilt package-lock
- GH-860 breaking: drop
q
dependency - GH-859 refactor: use
superspawn
- GH-851 breaking: replace
shelljs
withfs-extra
- GH-862 revert:
ios-sim
^9.0.0
to^8.0.2
- GH-863 chore (npm): add ignore list
- GH-861 chore: add
package-lock.json
- GH-790 breaking feature: Integrate & replace SplashScreens w/ Launch Storyboard (CB-13143)
- GH-769 breaking: add python 3 compatibility to
bin/cordova_plist_to_config_xml
- GH-847 breaking: add & use
fs-extra
w/ fixes - GH-853 breaking: bump
xcode
w/ fix - GH-850 breaking: fix file's
chmod
- GH-849 breaking(
pod
): remove unused API & bump minimum version requirements to1.8.0
- GH-848 breaking: bump
cordova-common@4.0.1
- GH-846 breaking(npm): bump dependencies
- GH-845 breaking(npm): bump dev dependencies
- GH-825 Fix type warnings and simplify code with auto boxing.
- GH-615 (ios) Don't pre-fill
orientation
- GH-820 Only set
bundleid
to main app target - Update CONTRIBUTING.md
- GH-822 chore: remove deprecated
orientation
methods - GH-810 Remove dead link to wiki from
README
- GH-543 feat: Add
Podspec
for Cordova library - GH-801 breaking (
UserAgent
): DropCDVUserAgentUtil
and Implement forWKWebView
- GH-803 feature: add
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED
- GH-802 refactor: applied various xcode recommended update
- GH-800 tests: change comment values for
MediaTypesRequiringUserActionForPlayback
- GH-781 breaking: Use
WKURLSchemeHandler
for serving app content - GH-797 breaking: remove MediaPlaybackRequiresUserAction and update
MediaTypesRequiringUserActionForPlayback
to proper variable types - GH-798 refactor (
cordovaBoolSettingForKey
): improve boolean checks and native logging - GH-785 refactor: deprecate
mediaPlaybackAllowsAirPlay
- GH-794 style: remove extra space from Objective-C test modules
- GH-784 chore: deprecate
mediaPlaybackRequiresUserAction
- GH-783 breaking (
CDVURLProtocol
): delete - GH-789 chore: fix deprecated
stringByAddingPercentEscapesUsingEncoding
usage - GH-788 chore: remove deprecated method
viewDidUnload
- GH-780 breaking: upgrade xcode compatible to 11.0
- GH-787 fix (
CDVWebViewEngine
): JavaScript to Native Call Not Working - GH-786 test: run on Xcode 11 only
- GH-782 fix (
node
): require failure withshebang
interpreter - GH-779 breaking: bump
deployment-target
to11.0
- GH-773 refactor: drop
uiwebview
& addwkwebview
- GH-751 refactor: use template strings
- GH-749 refactor: transform split out variables
- GH-750 refactor: transform object shorthand
- GH-748 refactor: do not alias this to self
- GH-747 refactor: use arrow functions
- GH-754 fix: replace variables in
Podfile
- GH-746 refactor: transform
var
tolet
/const
- GH-744 chore: updated
eslint
with applied fix - GH-743 chore: bump
node
requirement (>=10) - GH-731 CB-14135(ios): escape all single quotes from name in
Podfile