diff --git a/packages/webview_flutter/webview_flutter/CHANGELOG.md b/packages/webview_flutter/webview_flutter/CHANGELOG.md
index 1e1d5aa..99b8a5c 100644
--- a/packages/webview_flutter/webview_flutter/CHANGELOG.md
+++ b/packages/webview_flutter/webview_flutter/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 2.0.14
+
+* Update minimum Flutter SDK to 2.5 and iOS deployment target to 9.0.
+
 ## 2.0.13
 
 * Send URL of File to download to the NavigationDelegate on Android just like it is already done on iOS.
diff --git a/packages/webview_flutter/webview_flutter/example/ios/Flutter/AppFrameworkInfo.plist b/packages/webview_flutter/webview_flutter/example/ios/Flutter/AppFrameworkInfo.plist
index 9367d48..8d4492f 100644
--- a/packages/webview_flutter/webview_flutter/example/ios/Flutter/AppFrameworkInfo.plist
+++ b/packages/webview_flutter/webview_flutter/example/ios/Flutter/AppFrameworkInfo.plist
@@ -21,6 +21,6 @@
   <key>CFBundleVersion</key>
   <string>1.0</string>
   <key>MinimumOSVersion</key>
-  <string>8.0</string>
+  <string>9.0</string>
 </dict>
 </plist>
diff --git a/packages/webview_flutter/webview_flutter/example/ios/Runner.xcodeproj/project.pbxproj b/packages/webview_flutter/webview_flutter/example/ios/Runner.xcodeproj/project.pbxproj
index f75e71d..62428d0 100644
--- a/packages/webview_flutter/webview_flutter/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/packages/webview_flutter/webview_flutter/example/ios/Runner.xcodeproj/project.pbxproj
@@ -547,7 +547,7 @@
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
 				GCC_WARN_UNUSED_FUNCTION = YES;
 				GCC_WARN_UNUSED_VARIABLE = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
 				MTL_ENABLE_DEBUG_INFO = YES;
 				ONLY_ACTIVE_ARCH = YES;
 				SDKROOT = iphoneos;
@@ -597,7 +597,7 @@
 				GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
 				GCC_WARN_UNUSED_FUNCTION = YES;
 				GCC_WARN_UNUSED_VARIABLE = YES;
-				IPHONEOS_DEPLOYMENT_TARGET = 8.0;
+				IPHONEOS_DEPLOYMENT_TARGET = 9.0;
 				MTL_ENABLE_DEBUG_INFO = NO;
 				SDKROOT = iphoneos;
 				TARGETED_DEVICE_FAMILY = "1,2";
diff --git a/packages/webview_flutter/webview_flutter/example/ios/RunnerTests/FLTWKNavigationDelegateTests.m b/packages/webview_flutter/webview_flutter/example/ios/RunnerTests/FLTWKNavigationDelegateTests.m
index 9d3a2ae..08c2e8b 100644
--- a/packages/webview_flutter/webview_flutter/example/ios/RunnerTests/FLTWKNavigationDelegateTests.m
+++ b/packages/webview_flutter/webview_flutter/example/ios/RunnerTests/FLTWKNavigationDelegateTests.m
@@ -25,17 +25,14 @@
 }
 
 - (void)testWebViewWebContentProcessDidTerminateCallsRecourseErrorChannel {
-  if (@available(iOS 9.0, *)) {
-    // `webViewWebContentProcessDidTerminate` is only available on iOS 9.0 and above.
-    WKWebView *webview = OCMClassMock(WKWebView.class);
-    [self.navigationDelegate webViewWebContentProcessDidTerminate:webview];
-    OCMVerify([self.mockMethodChannel
-        invokeMethod:@"onWebResourceError"
-           arguments:[OCMArg checkWithBlock:^BOOL(NSDictionary *args) {
-             XCTAssertEqualObjects(args[@"errorType"], @"webContentProcessTerminated");
-             return true;
-           }]]);
-  }
+  WKWebView *webview = OCMClassMock(WKWebView.class);
+  [self.navigationDelegate webViewWebContentProcessDidTerminate:webview];
+  OCMVerify([self.mockMethodChannel invokeMethod:@"onWebResourceError"
+                                       arguments:[OCMArg checkWithBlock:^BOOL(NSDictionary *args) {
+                                         XCTAssertEqualObjects(args[@"errorType"],
+                                                               @"webContentProcessTerminated");
+                                         return true;
+                                       }]]);
 }
 
 @end
diff --git a/packages/webview_flutter/webview_flutter/example/pubspec.yaml b/packages/webview_flutter/webview_flutter/example/pubspec.yaml
index 2316d79..6b668eb 100644
--- a/packages/webview_flutter/webview_flutter/example/pubspec.yaml
+++ b/packages/webview_flutter/webview_flutter/example/pubspec.yaml
@@ -3,7 +3,8 @@
 publish_to: none
 
 environment:
-  sdk: ">=2.12.0 <3.0.0"
+  sdk: ">=2.14.0 <3.0.0"
+  flutter: ">=2.5.0"
 
 dependencies:
   flutter:
diff --git a/packages/webview_flutter/webview_flutter/ios/Classes/FLTCookieManager.m b/packages/webview_flutter/webview_flutter/ios/Classes/FLTCookieManager.m
index f4783ff..eb7c856 100644
--- a/packages/webview_flutter/webview_flutter/ios/Classes/FLTCookieManager.m
+++ b/packages/webview_flutter/webview_flutter/ios/Classes/FLTCookieManager.m
@@ -25,25 +25,20 @@
 }
 
 - (void)clearCookies:(FlutterResult)result {
-  if (@available(iOS 9.0, *)) {
-    NSSet<NSString *> *websiteDataTypes = [NSSet setWithObject:WKWebsiteDataTypeCookies];
-    WKWebsiteDataStore *dataStore = [WKWebsiteDataStore defaultDataStore];
+  NSSet<NSString *> *websiteDataTypes = [NSSet setWithObject:WKWebsiteDataTypeCookies];
+  WKWebsiteDataStore *dataStore = [WKWebsiteDataStore defaultDataStore];
 
-    void (^deleteAndNotify)(NSArray<WKWebsiteDataRecord *> *) =
-        ^(NSArray<WKWebsiteDataRecord *> *cookies) {
-          BOOL hasCookies = cookies.count > 0;
-          [dataStore removeDataOfTypes:websiteDataTypes
-                        forDataRecords:cookies
-                     completionHandler:^{
-                       result(@(hasCookies));
-                     }];
-        };
+  void (^deleteAndNotify)(NSArray<WKWebsiteDataRecord *> *) =
+      ^(NSArray<WKWebsiteDataRecord *> *cookies) {
+        BOOL hasCookies = cookies.count > 0;
+        [dataStore removeDataOfTypes:websiteDataTypes
+                      forDataRecords:cookies
+                   completionHandler:^{
+                     result(@(hasCookies));
+                   }];
+      };
 
-    [dataStore fetchDataRecordsOfTypes:websiteDataTypes completionHandler:deleteAndNotify];
-  } else {
-    // support for iOS8 tracked in https://github.com/flutter/flutter/issues/27624.
-    NSLog(@"Clearing cookies is not supported for Flutter WebViews prior to iOS 9.");
-  }
+  [dataStore fetchDataRecordsOfTypes:websiteDataTypes completionHandler:deleteAndNotify];
 }
 
 @end
diff --git a/packages/webview_flutter/webview_flutter/ios/Classes/FlutterWebView.m b/packages/webview_flutter/webview_flutter/ios/Classes/FlutterWebView.m
index c6d926d..1604f27 100644
--- a/packages/webview_flutter/webview_flutter/ios/Classes/FlutterWebView.m
+++ b/packages/webview_flutter/webview_flutter/ios/Classes/FlutterWebView.m
@@ -272,19 +272,14 @@
 }
 
 - (void)clearCache:(FlutterResult)result {
-  if (@available(iOS 9.0, *)) {
-    NSSet* cacheDataTypes = [WKWebsiteDataStore allWebsiteDataTypes];
-    WKWebsiteDataStore* dataStore = [WKWebsiteDataStore defaultDataStore];
-    NSDate* dateFrom = [NSDate dateWithTimeIntervalSince1970:0];
-    [dataStore removeDataOfTypes:cacheDataTypes
-                   modifiedSince:dateFrom
-               completionHandler:^{
-                 result(nil);
-               }];
-  } else {
-    // support for iOS8 tracked in https://github.com/flutter/flutter/issues/27624.
-    NSLog(@"Clearing cache is not supported for Flutter WebViews prior to iOS 9.");
-  }
+  NSSet* cacheDataTypes = [WKWebsiteDataStore allWebsiteDataTypes];
+  WKWebsiteDataStore* dataStore = [WKWebsiteDataStore defaultDataStore];
+  NSDate* dateFrom = [NSDate dateWithTimeIntervalSince1970:0];
+  [dataStore removeDataOfTypes:cacheDataTypes
+                 modifiedSince:dateFrom
+             completionHandler:^{
+               result(nil);
+             }];
 }
 
 - (void)onGetTitle:(FlutterResult)result {
@@ -391,25 +386,18 @@
     case 0:  // require_user_action_for_all_media_types
       if (@available(iOS 10.0, *)) {
         configuration.mediaTypesRequiringUserActionForPlayback = WKAudiovisualMediaTypeAll;
-      } else if (@available(iOS 9.0, *)) {
-        configuration.requiresUserActionForMediaPlayback = true;
       } else {
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wdeprecated-declarations"
-        configuration.mediaPlaybackRequiresUserAction = true;
-#pragma clang diagnostic pop
+        configuration.requiresUserActionForMediaPlayback = true;
       }
       break;
     case 1:  // always_allow
       if (@available(iOS 10.0, *)) {
-        configuration.mediaTypesRequiringUserActionForPlayback = WKAudiovisualMediaTypeNone;
-      } else if (@available(iOS 9.0, *)) {
-        configuration.requiresUserActionForMediaPlayback = false;
-      } else {
 #pragma clang diagnostic push
 #pragma clang diagnostic ignored "-Wdeprecated-declarations"
-        configuration.mediaPlaybackRequiresUserAction = false;
+        configuration.mediaTypesRequiringUserActionForPlayback = WKAudiovisualMediaTypeNone;
 #pragma clang diagnostic pop
+      } else {
+        configuration.requiresUserActionForMediaPlayback = false;
       }
       break;
     default:
@@ -468,11 +456,7 @@
 }
 
 - (void)updateUserAgent:(NSString*)userAgent {
-  if (@available(iOS 9.0, *)) {
-    [_webView setCustomUserAgent:userAgent];
-  } else {
-    NSLog(@"Updating UserAgent is not supported for Flutter WebViews prior to iOS 9.");
-  }
+  [_webView setCustomUserAgent:userAgent];
 }
 
 #pragma mark WKUIDelegate
diff --git a/packages/webview_flutter/webview_flutter/ios/webview_flutter.podspec b/packages/webview_flutter/webview_flutter/ios/webview_flutter.podspec
index 1602f1c..2e02199 100644
--- a/packages/webview_flutter/webview_flutter/ios/webview_flutter.podspec
+++ b/packages/webview_flutter/webview_flutter/ios/webview_flutter.podspec
@@ -18,6 +18,6 @@
   s.public_header_files = 'Classes/**/*.h'
   s.dependency 'Flutter'
 
-  s.platform = :ios, '8.0'
+  s.platform = :ios, '9.0'
   s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', 'EXCLUDED_ARCHS[sdk=iphonesimulator*]' => 'i386' }
 end
diff --git a/packages/webview_flutter/webview_flutter/pubspec.yaml b/packages/webview_flutter/webview_flutter/pubspec.yaml
index 3976ff7..393a66e 100644
--- a/packages/webview_flutter/webview_flutter/pubspec.yaml
+++ b/packages/webview_flutter/webview_flutter/pubspec.yaml
@@ -2,11 +2,11 @@
 description: A Flutter plugin that provides a WebView widget on Android and iOS.
 repository: https://github.com/flutter/plugins/tree/master/packages/webview_flutter/webview_flutter
 issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+webview%22
-version: 2.0.13
+version: 2.0.14
 
 environment:
-  sdk: ">=2.12.0 <3.0.0"
-  flutter: ">=2.0.0"
+  sdk: ">=2.14.0 <3.0.0"
+  flutter: ">=2.5.0"
 
 flutter:
   plugin:
