{"id":4497,"date":"2022-10-31T20:29:03","date_gmt":"2022-10-31T20:29:03","guid":{"rendered":"https:\/\/ionic.io\/blog\/?p=4497"},"modified":"2022-10-31T20:29:03","modified_gmt":"2022-10-31T20:29:03","slug":"ios-schemes-android-variants-in-appflow","status":"publish","type":"post","link":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow","title":{"rendered":"iOS Schemes and Android Variants support now in Appflow"},"content":{"rendered":"<p>Appflow, the mobile DevOps platform from Ionic, is excited to introduce support for iOS Schemes and Android Variants. Leveraging Appflow\u2019s Custom Environments feature, you can now specify custom build settings using the Schemes or Variants already defined for your mobile application project.<\/p>\n<p>With support for iOS Schemes and Android Variants, Appflow gives you powerful functionality to customize your builds without the need to pass multiple environment variables or manually specify settings with build scripts.<\/p>\n<p><!--more--><\/p>\n<h2>Build versions for testing, demos, and more<\/h2>\n<p>iOS Schemes and Android Variants allow developers to define build targets, configurations, and variables in a build version for a specific purpose. For example:<\/p>\n<ul>\n<li>A test build version that does not load ads and uses mock data<\/li>\n<li>A demo build version that excludes premium features<\/li>\n<li>A legacy build version for older devices that excludes unsupported functionality<\/li>\n<li>A debug build version that allows for debugger attachment<\/li>\n<\/ul>\n<p>Appflow has added new environment variables to custom environments so developers can set an iOS Scheme or Android Variant for a given environment.<\/p>\n<h2>Custom Environments for all<\/h2>\n<p>To allow all developers to use the new Schemes and Variants support, all <a href=\"https:\/\/ionic.io\/appflow\/pricing\">Appflow plans<\/a> now have access to <a href=\"https:\/\/ionic.io\/docs\/appflow\/automation\/environments#custom-environments\">Custom Environments<\/a>! Previously, only Basic plans and above had this feature.<\/p>\n<p>Plans have been updated with the following custom environment availability:<\/p>\n<ul>\n<li><b>Community:<\/b> Up to 3 environments<\/li>\n<li><b>Startup:<\/b> Up to 5 environments<\/li>\n<li><b>Basic:<\/b> Up to 10 environments<\/li>\n<li><b>Standard:<\/b> Up to 100 environments<\/li>\n<li><b>Enterprise: <\/b>Customized environment limit<\/li>\n<\/ul>\n<h2>iOS Schemes<\/h2>\n<p>iOS build schemes let you configure build targets, configuration, and environment details. <a href=\"https:\/\/developer.apple.com\/documentation\/xcode\/customizing-the-build-schemes-for-a-project\">Check out the Apple documentation<\/a> for details on how to create and customize a scheme.<\/p>\n<p>Appflow will attempt to automatically detect which scheme to use for your build, but you can now also specify a scheme for a custom environment using the <code>IOS_SCHEME<\/code> environment variable.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4498 size-full lazyload\" data-src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8.png\" alt=\"Appflow Environment creation screen with Custom iOS Scheme as the name and IOS_SCHEME as a key with a value of CustomScheme\" width=\"1920\" height=\"976\" data-srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8.png 1920w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-300x153.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-1024x521.png 1024w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-768x390.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-1536x781.png 1536w\" data-sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 1920px; --smush-placeholder-aspect-ratio: 1920\/976;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4498 size-full\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8.png\" alt=\"Appflow Environment creation screen with Custom iOS Scheme as the name and IOS_SCHEME as a key with a value of CustomScheme\" width=\"1920\" height=\"976\" srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8.png 1920w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-300x153.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-1024x521.png 1024w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-768x390.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-xcode-schemes-9d4b4acfe851ace5445fb30dedba73c8-1536x781.png 1536w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/noscript><\/p>\n<h2>Android Variants<\/h2>\n<p><a href=\"https:\/\/developer.android.com\/studio\/build\/build-variants\">Android\u2019s build variants<\/a> are composed of a Build Type and a Flavor. For example, a build type of <code>debug<\/code> and a flavor of <code>demo<\/code> would combine to create a <code>debugDemo<\/code>\u00a0build variant.<\/p>\n<p>Build Types and Flavors are both customized in your app\u2019s module-level <code>build.gradle<\/code> configuration file.<\/p>\n<h3>Build Types<\/h3>\n<p>By default, Appflow provides Debug and Release build types for Android. You can define a custom build type in the <code>android<\/code> block to specify build and packaging settings. The <a href=\"https:\/\/developer.android.com\/studio\/build\/build-variants#build-types\">Android documentation<\/a> outlines which options are available.<\/p>\n<p><b>Example:<\/b><\/p>\n<pre><code class=\"language-\">android {\n\u00a0\u00a0\u00a0\u00a0buildTypes {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0release {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0minifyEnabled true\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0proguardFiles getDefaultProguardFile(&#039;proguard-android.txt&#039;), &#039;proguard-rules.pro&#039;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0beta {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0minifyEnabled true\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0applicationIdSuffix &quot;.beta&quot;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0debuggable true\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>&nbsp;<\/p>\n<p>Then in Appflow, use the <code>ANDROID_BUILD_TYPE<\/code> environment variable and pass the value of which build type to use for a custom environment. Read more in <a href=\"https:\/\/ionic.io\/docs\/appflow\/package\/native-projects#build-type\">the Appflow documentation here<\/a>.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4499 size-full lazyload\" data-src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4.png\" alt=\"Appflow environment creation screen with Custom Android Variant name and BUILD_TYPE as a key with Staging as the value.\" width=\"1805\" height=\"1262\" data-srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4.png 1805w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-300x210.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-1024x716.png 1024w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-768x537.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-1536x1074.png 1536w\" data-sizes=\"auto, (max-width: 1805px) 100vw, 1805px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 1805px; --smush-placeholder-aspect-ratio: 1805\/1262;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-4499 size-full\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4.png\" alt=\"Appflow environment creation screen with Custom Android Variant name and BUILD_TYPE as a key with Staging as the value.\" width=\"1805\" height=\"1262\" srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4.png 1805w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-300x210.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-1024x716.png 1024w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-768x537.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ss-android-variant-build-type-020838b7679702ac51f50d955f68acf4-1536x1074.png 1536w\" sizes=\"auto, (max-width: 1805px) 100vw, 1805px\" \/><\/noscript><\/p>\n<h3>Flavors<\/h3>\n<p><a href=\"https:\/\/developer.android.com\/studio\/build\/build-variants#product-flavors\">Android product flavors<\/a> let you customize any property in <code>defaultConfig<\/code> and create <a href=\"https:\/\/developer.android.com\/studio\/build\/build-variants#sourcesets\">source sets<\/a> to control which code is used for a given flavor. Flavors are also defined inside the <code>android<\/code> block under <code>productFlavors<\/code>. A <code>flavorDimension<\/code>, which represents a group of flavors, is also required.<\/p>\n<p><b>Example:<\/b><\/p>\n<pre><code class=\"language-\">android {\n\u00a0\u00a0\u00a0\u00a0...\n\u00a0\u00a0\u00a0\u00a0flavorDimensions &quot;version&quot;\n\u00a0\u00a0\u00a0\u00a0productFlavors {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0internal {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0applicationIdSuffix &quot;.internal&quot;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0versionNameSuffix &quot;-internal&quot;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0public {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0applicationIdSuffix &quot;.public&quot;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0versionNameSuffix &quot;-public&quot;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0}\n}\n<\/code><\/pre>\n<p>&nbsp;<\/p>\n<p>Note: Appflow currently only supports a single flavor dimension. <a href=\"https:\/\/ionic.io\/docs\/appflow\/package\/native-projects#product-flavor\">See documentation for more details<\/a>.<\/p>\n<p>In Appflow, use the <code>ANDROID_FLAVOR<\/code> environment variable to set the flavor for a custom environment.<\/p>\n<h2>Using Custom Environments<\/h2>\n<p>Once you have created a custom environment, select it when creating a new build or use an <a href=\"https:\/\/ionic.io\/docs\/appflow\/automation\/create\">Appflow automation<\/a> to always use a specific environment based on a trigger. It\u2019s that simple.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-4500 lazyload\" data-src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM.png\" alt=\"Appflow New Build screen with Android devDebug Build Variant selected in the Environment selection.\" width=\"1562\" height=\"1416\" data-srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM.png 1562w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-300x272.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-1024x928.png 1024w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-768x696.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-1536x1392.png 1536w\" data-sizes=\"auto, (max-width: 1562px) 100vw, 1562px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 1562px; --smush-placeholder-aspect-ratio: 1562\/1416;\" \/><noscript><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-4500\" src=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM.png\" alt=\"Appflow New Build screen with Android devDebug Build Variant selected in the Environment selection.\" width=\"1562\" height=\"1416\" srcset=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM.png 1562w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-300x272.png 300w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-1024x928.png 1024w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-768x696.png 768w, https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/Screen-Shot-2022-10-25-at-4.10.53-PM-1536x1392.png 1536w\" sizes=\"auto, (max-width: 1562px) 100vw, 1562px\" \/><\/noscript><\/p>\n<h2>Get started<\/h2>\n<p>Create your own Custom Environments with iOS Schemes and Android Variants today in the Automate section of your project or from the build screen.<\/p>\n<p>To leverage Appflow for streamlined mobile builds and deployments, <a href=\"https:\/\/dashboard.ionicframework.com\/account-setup?loc=billing\">start a free trial today<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Appflow, the mobile DevOps platform from Ionic, is excited to introduce support for iOS Schemes and Android Variants. Leveraging Appflow\u2019s Custom Environments feature, you can now specify custom build settings using the Schemes or Variants already defined for your mobile application project. With support for iOS Schemes and Android Variants, Appflow gives you powerful functionality [&hellip;]<\/p>\n","protected":false},"author":98,"featured_media":4504,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"publish_to_discourse":"1","publish_post_category":"20","wpdc_auto_publish_overridden":"","wpdc_topic_tags":"","wpdc_pin_topic":"","wpdc_pin_until":"","discourse_post_id":"554898","discourse_permalink":"http:\/\/forum.ionicframework.com\/t\/ios-schemes-and-android-variants-support-now-in-appflow\/228166","wpdc_publishing_response":"","wpdc_publishing_error":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[120],"tags":[125,128,100],"class_list":["post-4497","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-announcements","tag-android","tag-appflow","tag-ios"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.0 (Yoast SEO v23.0) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>iOS Schemes and Android Variants support now in Appflow - Ionic Blog<\/title>\n<meta name=\"description\" content=\"Appflow now supports iOS Schemes and Android Variants within its Custom Environments for mobile builds.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"iOS Schemes and Android Variants support now in Appflow\" \/>\n<meta property=\"og:description\" content=\"Appflow now supports iOS Schemes and Android Variants within its Custom Environments for mobile builds.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow\" \/>\n<meta property=\"og:site_name\" content=\"Ionic Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-10-31T20:29:03+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2240\" \/>\n\t<meta property=\"og:image:height\" content=\"1120\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Cecelia Martinez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ceceliacreates\" \/>\n<meta name=\"twitter:site\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Cecelia Martinez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#article\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow\"},\"author\":{\"name\":\"Cecelia Martinez\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/5e1062699fd542f5a6fe4c72879c1637\"},\"headline\":\"iOS Schemes and Android Variants support now in Appflow\",\"datePublished\":\"2022-10-31T20:29:03+00:00\",\"dateModified\":\"2022-10-31T20:29:03+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow\"},\"wordCount\":562,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png\",\"keywords\":[\"Android\",\"Appflow\",\"iOS\"],\"articleSection\":[\"Announcements\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow\",\"url\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow\",\"name\":\"iOS Schemes and Android Variants support now in Appflow - Ionic Blog\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png\",\"datePublished\":\"2022-10-31T20:29:03+00:00\",\"dateModified\":\"2022-10-31T20:29:03+00:00\",\"description\":\"Appflow now supports iOS Schemes and Android Variants within its Custom Environments for mobile builds.\",\"breadcrumb\":{\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png\",\"width\":2240,\"height\":1120},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ionic.io\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"iOS Schemes and Android Variants support now in Appflow\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/ionic.io\/blog\/#website\",\"url\":\"https:\/\/ionic.io\/blog\/\",\"name\":\"ionic.io\/blog\",\"description\":\"Build amazing native and progressive web apps with the web\",\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/ionic.io\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/ionic.io\/blog\/#organization\",\"name\":\"Ionic\",\"url\":\"https:\/\/ionic.io\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png\",\"width\":1920,\"height\":854,\"caption\":\"Ionic\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/ionicframework\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/5e1062699fd542f5a6fe4c72879c1637\",\"name\":\"Cecelia Martinez\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/09\/IMG_4815-150x150.jpeg\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/09\/IMG_4815-150x150.jpeg\",\"caption\":\"Cecelia Martinez\"},\"description\":\"Developer Advocate\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/ceceliamartinez\/\",\"https:\/\/x.com\/ceceliacreates\"],\"jobTitle\":\"Developer Advocate\",\"url\":\"https:\/\/ionic.io\/blog\/author\/cecelia\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"iOS Schemes and Android Variants support now in Appflow - Ionic Blog","description":"Appflow now supports iOS Schemes and Android Variants within its Custom Environments for mobile builds.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow","og_locale":"en_US","og_type":"article","og_title":"iOS Schemes and Android Variants support now in Appflow","og_description":"Appflow now supports iOS Schemes and Android Variants within its Custom Environments for mobile builds.","og_url":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow","og_site_name":"Ionic Blog","article_published_time":"2022-10-31T20:29:03+00:00","og_image":[{"width":2240,"height":1120,"url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png","type":"image\/png"}],"author":"Cecelia Martinez","twitter_card":"summary_large_image","twitter_creator":"@ceceliacreates","twitter_site":"@ionicframework","twitter_misc":{"Written by":"Cecelia Martinez","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#article","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow"},"author":{"name":"Cecelia Martinez","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/5e1062699fd542f5a6fe4c72879c1637"},"headline":"iOS Schemes and Android Variants support now in Appflow","datePublished":"2022-10-31T20:29:03+00:00","dateModified":"2022-10-31T20:29:03+00:00","mainEntityOfPage":{"@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow"},"wordCount":562,"commentCount":0,"publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"image":{"@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png","keywords":["Android","Appflow","iOS"],"articleSection":["Announcements"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow","url":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow","name":"iOS Schemes and Android Variants support now in Appflow - Ionic Blog","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage"},"image":{"@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png","datePublished":"2022-10-31T20:29:03+00:00","dateModified":"2022-10-31T20:29:03+00:00","description":"Appflow now supports iOS Schemes and Android Variants within its Custom Environments for mobile builds.","breadcrumb":{"@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#primaryimage","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png","width":2240,"height":1120},{"@type":"BreadcrumbList","@id":"https:\/\/ionic.io\/blog\/ios-schemes-android-variants-in-appflow#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ionic.io\/blog"},{"@type":"ListItem","position":2,"name":"iOS Schemes and Android Variants support now in Appflow"}]},{"@type":"WebSite","@id":"https:\/\/ionic.io\/blog\/#website","url":"https:\/\/ionic.io\/blog\/","name":"ionic.io\/blog","description":"Build amazing native and progressive web apps with the web","publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ionic.io\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ionic.io\/blog\/#organization","name":"Ionic","url":"https:\/\/ionic.io\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2020\/10\/white-on-color.png","width":1920,"height":854,"caption":"Ionic"},"image":{"@id":"https:\/\/ionic.io\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/ionicframework"]},{"@type":"Person","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/5e1062699fd542f5a6fe4c72879c1637","name":"Cecelia Martinez","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/09\/IMG_4815-150x150.jpeg","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/09\/IMG_4815-150x150.jpeg","caption":"Cecelia Martinez"},"description":"Developer Advocate","sameAs":["https:\/\/www.linkedin.com\/in\/ceceliamartinez\/","https:\/\/x.com\/ceceliacreates"],"jobTitle":"Developer Advocate","url":"https:\/\/ionic.io\/blog\/author\/cecelia"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2022\/10\/ios-schemas-android-variants-feature-image.png","_links":{"self":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/4497","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/users\/98"}],"replies":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/comments?post=4497"}],"version-history":[{"count":1,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/4497\/revisions"}],"predecessor-version":[{"id":4501,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/4497\/revisions\/4501"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media\/4504"}],"wp:attachment":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media?parent=4497"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/categories?post=4497"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/tags?post=4497"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}