{"id":2205,"date":"2018-06-22T15:28:06","date_gmt":"2018-06-22T15:28:06","guid":{"rendered":"https:\/\/ionicframework.com\/?p=2205"},"modified":"2019-03-28T19:33:39","modified_gmt":"2019-03-28T19:33:39","slug":"using-testflight-for-user-testing-with-ionic","status":"publish","type":"post","link":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic","title":{"rendered":"Using TestFlight for User Testing with Ionic"},"content":{"rendered":"<p>Testing an app is always an important step to take before releasing, but it can often hard to do. While Android allows users to just load arbitrary apps on their device, iOS is a much more closed ecosystem with their own rules. In order to send an app out for user testing, you have to use TestFlight. Apple&#8217;s <a href=\"https:\/\/developer.apple.com\/testflight\/\">TestFlight<\/a> is a service for sharing early release of an app with user. From TestFlight&#8217;s site:<\/p>\n<blockquote><p>\n  TestFlight makes it easy to invite users to test your apps and collect valuable feedback before you release them on the App Store. You can invite up to 10,000 testers using just their email address.\n<\/p><\/blockquote>\n<p>So with TestFlight, we can take an early build of an app, and share it with a select group of users, and allow them to provide feedback on their experience. Since the app is compiled ahead of time, developers can test the full spectrum of native APIs and detect if there are any errors.<\/p>\n<p>Since the app is installed on the testers device, it&#8217;s also able to utilize <a href=\"https:\/\/ionicframework.com\/docs\/pro\/deploy\/\">Ionic Pro Deploy<\/a> and ship updates during the trial period! Let&#8217;s dive into what we need to do in order to use Ionic Pro with TestFlight.<\/p>\n<p><!--more--><\/p>\n<p>When TestFlight is used in combination with <a href=\"https:\/\/ionicframework.com\/docs\/pro\/deploy\/\">Ionic Pro Deploy<\/a> code updates can be delivered to the testers throughout the 90-day testing cycle.<\/p>\n<p>By doing this, our development cycle can be boiled down to:<\/p>\n<ul>\n<li>Creating an initial native build of the app.<\/li>\n<li>Uploading the app to the App Store for use with TestFlight.<\/li>\n<li>Deploying HTML, CSS, and JavaScript changes via Ionic Pro Deploy.<\/li>\n<\/ul>\n<p>A new build will only need to be uploaded to the App Store if native layer changes are made or if the testing time frame expires.<\/p>\n<h3>Getting Started<\/h3>\n<p>One of the first things you will need to have a Distribution Provisioning Profile associated with your app&#8217;s bundle ID. That Provisioning Profile will need to be associated with a valid Production Certificate that you have access to use. Before continuing, please make sure you have all of that properly configured and that your Apple Developer user has the required roles in order to perform the required operations.<\/p>\n<p>With the provisioning profiles and certificates taken care of, we&#8217;ll next want to create an app and link it with our Ionic Pro account.<\/p>\n<pre><code class=\"language-shell\">ionic start my-app tabs\n<\/code><\/pre>\n<blockquote><p>\n  If you need some more info on getting started with Pro, take a look at our <a href=\"https:\/\/ionicframework.com\/docs\/pro\/basics\/getting-started\/\">Getting Started guide<\/a>\n<\/p><\/blockquote>\n<p>After starting an app, we&#8217;ll want to then add the <a href=\"https:\/\/ionicframework.com\/docs\/pro\/deploy\/setup\/#installation\">Deploy Plugin<\/a>.<br \/>\nThe Pro Dashboard should also be able to provide you with the exact install command needed when getting setup.<\/p>\n<p>Next, we&#8217;ll add the iOS platform<\/p>\n<pre><code class=\"language-shell\">ionic cordova platform add ios\n<\/code><\/pre>\n<p>One thing to make sure is that the widget\/id in the <code>config.xml<\/code> is updated to match the App&#8217;s bundle ID used with Apple&#8217;s certificates. After adding iOS is added, we&#8217;ll build the app:<\/p>\n<pre><code class=\"language-shell\">ionic cordova build ios\n<\/code><\/pre>\n<p>Then open the project in Xcode<\/p>\n<pre><code class=\"language-shell\">open platforms\/ios\/MyApp.xcworkspace\n<\/code><\/pre>\n<p>From here, you&#8217;ll want to follow Apple&#8217;s steps for <a href=\"https:\/\/help.apple.com\/xcode\/mac\/9.3\/#\/dev2539d985f\">Distributing an app using TestFlight<\/a>. Note that in some cases the Ionic and Cordova build processes have already performed certain actions such as setting the <code>Bundle ID<\/code> based on data in your <code>config.xml<\/code> file. Key points in the steps are:<\/p>\n<ul>\n<li>Signing: If automatic signing cannot be used, manually sign the app using a valid Production Certificate and an associated Distribution Provisioning Profile.<\/li>\n<li>Select <code>Generic iOS Device<\/code> in the Scheme toolbar menu on the main window of Xcode.<\/li>\n<li>Select <code>Project&gt;Archive<\/code> from the Xcode menu, this should open the archive window.<\/li>\n<li><a href=\"https:\/\/help.apple.com\/itunes-connect\/developer\/#\/dev2cd126805\">Add the app<\/a> in iTunes Connect.<\/li>\n<li>From the Xcode Archive window, validate the archive.<\/li>\n<li>Press the <code>Upload to AppStore\u2026<\/code> button.<\/li>\n<\/ul>\n<p>Once the upload completes, open the app in iTunes connect to add internal and external testers and fill out the information for beta-test review.<\/p>\n<h3>Testing the App and Deploying Changes<\/h3>\n<p>At this point, internal testers should be able to download your application via TestFlight. External users must wait until Apple approves the app for beta-testing.<\/p>\n<p>Changes to the Ionic application can now be pushed to Ionic Pro and distributed to testers using Ionic Pro&#8217;s deploy feature by pushing the code to Ionic Pro and deploying the resulting build to the channel that is being used by the test app.<\/p>\n<h3>Parting Words<\/h3>\n<p>TestFlight is a power service that can help get your app distributed to your testers easily. If you would like more in-depth help with the full development cycle of your application including user testing, please contact our Enterprise Customer Success team. Our experts can provide hands-on and highly customized training and advisory services to get you started and keep your project on track.<\/p>\n<p>Learn more by visiting our <a href=\"https:\/\/ionicframework.com\/enterprise\">Ionic for Enterprise<\/a> page.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Testing an app is always an important step to take before releasing, but it can often hard to do. While Android allows users to just load arbitrary apps on their device, iOS is a much more closed ecosystem with their own rules. In order to send an app out for user testing, you have to [&hellip;]<\/p>\n","protected":false},"author":55,"featured_media":2226,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"publish_to_discourse":"","publish_post_category":"","wpdc_auto_publish_overridden":"","wpdc_topic_tags":"","wpdc_pin_topic":"","wpdc_pin_until":"","discourse_post_id":"","discourse_permalink":"","wpdc_publishing_response":"","wpdc_publishing_error":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[141,100,99,86],"class_list":["post-2205","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-all","tag-ionic-enterprise-edition","tag-ios","tag-testflight","tag-user-testing"],"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>Using TestFlight for User Testing with Ionic - Ionic Blog<\/title>\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\/using-testflight-for-user-testing-with-ionic\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using TestFlight for User Testing with Ionic\" \/>\n<meta property=\"og:description\" content=\"Testing an app is always an important step to take before releasing, but it can often hard to do. While Android allows users to just load arbitrary apps on their device, iOS is a much more closed ecosystem with their own rules. In order to send an app out for user testing, you have to [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic\" \/>\n<meta property=\"og:site_name\" content=\"Ionic Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-06-22T15:28:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-03-28T19:33:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1400\" \/>\n\t<meta property=\"og:image:height\" content=\"560\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ken Sodemann\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:site\" content=\"@ionicframework\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ken Sodemann\" \/>\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\/using-testflight-for-user-testing-with-ionic#article\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic\"},\"author\":{\"name\":\"Ken Sodemann\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/00deec3725c91ec95772de89be49f5ca\"},\"headline\":\"Using TestFlight for User Testing with Ionic\",\"datePublished\":\"2018-06-22T15:28:06+00:00\",\"dateModified\":\"2019-03-28T19:33:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic\"},\"wordCount\":782,\"commentCount\":6,\"publisher\":{\"@id\":\"https:\/\/ionic.io\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png\",\"keywords\":[\"Ionic Enterprise Edition\",\"iOS\",\"TestFlight\",\"User Testing\"],\"articleSection\":[\"All\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic\",\"url\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic\",\"name\":\"Using TestFlight for User Testing with Ionic - Ionic Blog\",\"isPartOf\":{\"@id\":\"https:\/\/ionic.io\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png\",\"datePublished\":\"2018-06-22T15:28:06+00:00\",\"dateModified\":\"2019-03-28T19:33:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage\",\"url\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png\",\"contentUrl\":\"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png\",\"width\":1400,\"height\":560},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ionic.io\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using TestFlight for User Testing with Ionic\"}]},{\"@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\/00deec3725c91ec95772de89be49f5ca\",\"name\":\"Ken Sodemann\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a9bac28efdb8aadafd3c99d5a39a73a67712b5bd63aa6084c138ee7c157f31f1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a9bac28efdb8aadafd3c99d5a39a73a67712b5bd63aa6084c138ee7c157f31f1?s=96&d=mm&r=g\",\"caption\":\"Ken Sodemann\"},\"url\":\"https:\/\/ionic.io\/blog\/author\/ken_sodemann\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Using TestFlight for User Testing with Ionic - Ionic Blog","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\/using-testflight-for-user-testing-with-ionic","og_locale":"en_US","og_type":"article","og_title":"Using TestFlight for User Testing with Ionic","og_description":"Testing an app is always an important step to take before releasing, but it can often hard to do. While Android allows users to just load arbitrary apps on their device, iOS is a much more closed ecosystem with their own rules. In order to send an app out for user testing, you have to [&hellip;]","og_url":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic","og_site_name":"Ionic Blog","article_published_time":"2018-06-22T15:28:06+00:00","article_modified_time":"2019-03-28T19:33:39+00:00","og_image":[{"width":1400,"height":560,"url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png","type":"image\/png"}],"author":"Ken Sodemann","twitter_card":"summary_large_image","twitter_creator":"@ionicframework","twitter_site":"@ionicframework","twitter_misc":{"Written by":"Ken Sodemann","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#article","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic"},"author":{"name":"Ken Sodemann","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/00deec3725c91ec95772de89be49f5ca"},"headline":"Using TestFlight for User Testing with Ionic","datePublished":"2018-06-22T15:28:06+00:00","dateModified":"2019-03-28T19:33:39+00:00","mainEntityOfPage":{"@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic"},"wordCount":782,"commentCount":6,"publisher":{"@id":"https:\/\/ionic.io\/blog\/#organization"},"image":{"@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png","keywords":["Ionic Enterprise Edition","iOS","TestFlight","User Testing"],"articleSection":["All"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic","url":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic","name":"Using TestFlight for User Testing with Ionic - Ionic Blog","isPartOf":{"@id":"https:\/\/ionic.io\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage"},"image":{"@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage"},"thumbnailUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png","datePublished":"2018-06-22T15:28:06+00:00","dateModified":"2019-03-28T19:33:39+00:00","breadcrumb":{"@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#primaryimage","url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png","contentUrl":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png","width":1400,"height":560},{"@type":"BreadcrumbList","@id":"https:\/\/ionic.io\/blog\/using-testflight-for-user-testing-with-ionic#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ionic.io\/blog"},{"@type":"ListItem","position":2,"name":"Using TestFlight for User Testing with Ionic"}]},{"@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\/00deec3725c91ec95772de89be49f5ca","name":"Ken Sodemann","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ionic.io\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a9bac28efdb8aadafd3c99d5a39a73a67712b5bd63aa6084c138ee7c157f31f1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a9bac28efdb8aadafd3c99d5a39a73a67712b5bd63aa6084c138ee7c157f31f1?s=96&d=mm&r=g","caption":"Ken Sodemann"},"url":"https:\/\/ionic.io\/blog\/author\/ken_sodemann"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/ionic.io\/blog\/wp-content\/uploads\/2018\/05\/testflight_ionic.png","_links":{"self":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/2205","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\/55"}],"replies":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/comments?post=2205"}],"version-history":[{"count":0,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/posts\/2205\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media\/2226"}],"wp:attachment":[{"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/media?parent=2205"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/categories?post=2205"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ionic.io\/blog\/wp-json\/wp\/v2\/tags?post=2205"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}