[in_app_purchase] Configured example app to use StoreKit Testing on iOS 14 (#3772)

diff --git a/packages/in_app_purchase/in_app_purchase/CHANGELOG.md b/packages/in_app_purchase/in_app_purchase/CHANGELOG.md
index beb4356..e3434d4 100644
--- a/packages/in_app_purchase/in_app_purchase/CHANGELOG.md
+++ b/packages/in_app_purchase/in_app_purchase/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.5.1+3
+
+* Configured the iOS example App to make use of StoreKit Testing on iOS 14 and higher.
+
 ## 0.5.1+2
 
 * Update README to provide a better instruction of the plugin.
diff --git a/packages/in_app_purchase/in_app_purchase/example/README.md b/packages/in_app_purchase/in_app_purchase/example/README.md
index 4140483..dc59c6e 100644
--- a/packages/in_app_purchase/in_app_purchase/example/README.md
+++ b/packages/in_app_purchase/in_app_purchase/example/README.md
@@ -60,6 +60,28 @@
 
 ### iOS
 
+When using Xcode 12 and iOS 14 or higher you can run the example in the simulator or on a device without 
+having to configure an App in App Store Connect. The example app is set up to use StoreKit Testing configured
+in the `example/ios/Runner/Configuration.storekit` file (as documented in the article [Setting Up StoreKit Testing in Xcode](https://developer.apple.com/documentation/xcode/setting_up_storekit_testing_in_xcode?language=objc)).
+To run the application take the following steps (note that it will only work when running from Xcode):
+
+1. Open the example app with Xcode, `File > Open File` `example/ios/Runner.xcworkspace`;
+
+2. Within Xcode edit the current scheme, `Product > Scheme > Edit Scheme...` (or press `Command + Shift + ,`);
+
+3. Enable StoreKit testing:
+  a. Select the `Run` action;
+  b. Click `Options` in the action settings;
+  c. Select the `Configuration.storekit` for the StoreKit Configuration option.
+
+4. Click the `Close` button to close the scheme editor;
+
+5. Select the device you want to run the example App on;
+
+6. Run the application using `Product > Run` (or hit the run button).
+
+When testing on pre-iOS 14 you can't run the example app on a simulator and you will need to configure an app in App Store Connect. You can do so by following the steps below:
+
 1. Follow ["Workflow for configuring in-app
    purchases"](https://help.apple.com/app-store-connect/#/devb57be10e7), a
    detailed guide on all the steps needed to enable IAPs for an app. Complete
diff --git a/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.pbxproj b/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.pbxproj
index 95b145b..3821ea2 100644
--- a/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.pbxproj
+++ b/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.pbxproj
@@ -76,6 +76,7 @@
 		CC2B3FFB29B2574DEDD718A6 /* Pods-in_app_purchase_pluginTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-in_app_purchase_pluginTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-in_app_purchase_pluginTests/Pods-in_app_purchase_pluginTests.debug.xcconfig"; sourceTree = "<group>"; };
 		DE7EEEE26E27ACC04BA9951D /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
 		E20838C66ABCD8667B0BB95D /* libPods-in_app_purchase_pluginTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-in_app_purchase_pluginTests.a"; sourceTree = BUILT_PRODUCTS_DIR; };
+		F6E5D5F926131C4800C68BED /* Configuration.storekit */ = {isa = PBXFileReference; lastKnownFileType = text; path = Configuration.storekit; sourceTree = "<group>"; };
 		F78AF3132342BC89008449C7 /* PaymentQueueTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PaymentQueueTest.m; path = ../../../ios/Tests/PaymentQueueTest.m; sourceTree = "<group>"; };
 /* End PBXFileReference section */
 
@@ -155,6 +156,7 @@
 				97C146F11CF9000F007C117D /* Supporting Files */,
 				1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,
 				1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
+				F6E5D5F926131C4800C68BED /* Configuration.storekit */,
 			);
 			path = Runner;
 			sourceTree = "<group>";
@@ -205,7 +207,6 @@
 				97C146EC1CF9000F007C117D /* Resources */,
 				9705A1C41CF9048500538489 /* Embed Frameworks */,
 				3B06AD1E1E4923F5004D2608 /* Thin Binary */,
-				AC81012709A36415AE0CF8C4 /* [CP] Embed Pods Frameworks */,
 			);
 			buildRules = (
 			);
@@ -369,24 +370,6 @@
 			shellPath = /bin/sh;
 			shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
 		};
-		AC81012709A36415AE0CF8C4 /* [CP] Embed Pods Frameworks */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputPaths = (
-				"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh",
-				"${PODS_ROOT}/../Flutter/Flutter.framework",
-			);
-			name = "[CP] Embed Pods Frameworks";
-			outputPaths = (
-				"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Flutter.framework",
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n";
-			showEnvVarsInLog = 0;
-		};
 /* End PBXShellScriptBuildPhase section */
 
 /* Begin PBXSourcesBuildPhase section */
diff --git a/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
index 1d526a1..919434a 100644
--- a/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
+++ b/packages/in_app_purchase/in_app_purchase/example/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -2,6 +2,6 @@
 <Workspace
    version = "1.0">
    <FileRef
-      location = "group:Runner.xcodeproj">
+      location = "self:">
    </FileRef>
 </Workspace>
diff --git a/packages/in_app_purchase/in_app_purchase/example/ios/Runner/Configuration.storekit b/packages/in_app_purchase/in_app_purchase/example/ios/Runner/Configuration.storekit
new file mode 100644
index 0000000..4958a84
--- /dev/null
+++ b/packages/in_app_purchase/in_app_purchase/example/ios/Runner/Configuration.storekit
@@ -0,0 +1,96 @@
+{
+  "products" : [
+    {
+      "displayPrice" : "0.99",
+      "familyShareable" : false,
+      "internalID" : "AE10D05D",
+      "localizations" : [
+        {
+          "description" : "A consumable product.",
+          "displayName" : "Consumable",
+          "locale" : "en_US"
+        }
+      ],
+      "productID" : "consumable",
+      "referenceName" : "consumable",
+      "type" : "Consumable"
+    },
+    {
+      "displayPrice" : "10.99",
+      "familyShareable" : false,
+      "internalID" : "FABCF067",
+      "localizations" : [
+        {
+          "description" : "An non-consumable product.",
+          "displayName" : "Upgrade",
+          "locale" : "en_US"
+        }
+      ],
+      "productID" : "upgrade",
+      "referenceName" : "upgrade",
+      "type" : "NonConsumable"
+    }
+  ],
+  "settings" : {
+
+  },
+  "subscriptionGroups" : [
+    {
+      "id" : "D0FEE8D8",
+      "localizations" : [
+
+      ],
+      "name" : "Example Subscriptions",
+      "subscriptions" : [
+        {
+          "adHocOffers" : [
+
+          ],
+          "displayPrice" : "3.99",
+          "familyShareable" : false,
+          "groupNumber" : 1,
+          "internalID" : "922EB597",
+          "introductoryOffer" : null,
+          "localizations" : [
+            {
+              "description" : "A lower level subscription.",
+              "displayName" : "Subscription Silver",
+              "locale" : "en_US"
+            }
+          ],
+          "productID" : "subscription_silver",
+          "recurringSubscriptionPeriod" : "P1M",
+          "referenceName" : "subscription_silver",
+          "subscriptionGroupID" : "D0FEE8D8",
+          "type" : "RecurringSubscription"
+        },
+        {
+          "adHocOffers" : [
+
+          ],
+          "displayPrice" : "5.99",
+          "familyShareable" : false,
+          "groupNumber" : 2,
+          "internalID" : "0BC7FF5E",
+          "introductoryOffer" : null,
+          "localizations" : [
+            {
+              "description" : "A higher level subscription.",
+              "displayName" : "Subscription Gold",
+              "locale" : "en_US"
+            }
+          ],
+          "productID" : "subscription_gold",
+          "recurringSubscriptionPeriod" : "P1M",
+          "referenceName" : "subscription_gold",
+          "subscriptionGroupID" : "D0FEE8D8",
+          "type" : "RecurringSubscription"
+        }
+      ]
+    }
+  ],
+  "version" : {
+    "major" : 1,
+    "minor" : 0
+  }
+}
diff --git a/packages/in_app_purchase/in_app_purchase/pubspec.yaml b/packages/in_app_purchase/in_app_purchase/pubspec.yaml
index 5a0a3ba..6dfb805 100644
--- a/packages/in_app_purchase/in_app_purchase/pubspec.yaml
+++ b/packages/in_app_purchase/in_app_purchase/pubspec.yaml
@@ -1,7 +1,7 @@
 name: in_app_purchase
 description: A Flutter plugin for in-app purchases. Exposes APIs for making in-app purchases through the App Store and Google Play.
 homepage: https://github.com/flutter/plugins/tree/master/packages/in_app_purchase
-version: 0.5.1+2
+version: 0.5.1+3
 
 dependencies:
   flutter: