{"componentChunkName":"component---src-templates-post-template-js","path":"/flutter-setup-mac-and-windows-en","result":{"data":{"markdownRemark":{"id":"ac487980-76d9-55a8-b8fa-16097af0cd19","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/flutter-setup-mac-and-windows\">original page</a>.</p>\n</blockquote>\n<p>This time, I will set up a Flutter development environment on both Windows and macOS.</p>\n<p>I left the steps here as a simple memo.</p>\n<p>You could say I should just do development on a Mac, since it can build both Android and iOS apps. But I was far too unfamiliar with using a Mac and did not want to develop on macOS, so I decided to prepare environments on both Windows and macOS.</p>\n<!-- omit in toc -->\n<h2 id=\"table-of-contents\" style=\"position:relative;\"><a href=\"#table-of-contents\" aria-label=\"table of contents permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Table of Contents</h2>\n<ul>\n<li>\n<p><a href=\"#create-a-flutter-development-environment-on-windows\">Create a Flutter development environment on Windows</a></p>\n<ul>\n<li><a href=\"#install-flutter-sdk\">Install Flutter SDK</a></li>\n<li><a href=\"#configure-environment-variables\">Configure environment variables</a></li>\n<li><a href=\"#install-the-flutter-plugin-for-vscode\">Install the Flutter plugin for VSCode</a></li>\n<li><a href=\"#create-a-test-app\">Create a test app</a></li>\n<li><a href=\"#build-the-application\">Build the application</a></li>\n<li><a href=\"#check-the-setup\">Check the setup</a></li>\n</ul>\n</li>\n<li>\n<p><a href=\"#create-a-flutter-development-environment-on-macos\">Create a Flutter development environment on macOS</a></p>\n<ul>\n<li><a href=\"#install-flutter-sdk-1\">Install Flutter SDK</a></li>\n<li><a href=\"#set-up-vscode\">Set up VSCode</a></li>\n</ul>\n</li>\n<li><a href=\"#summary\">Summary</a></li>\n</ul>\n<h2 id=\"create-a-flutter-development-environment-on-windows\" style=\"position:relative;\"><a href=\"#create-a-flutter-development-environment-on-windows\" aria-label=\"create a flutter development environment on windows permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Create a Flutter development environment on Windows</h2>\n<p>First, set up a Flutter development environment on a Windows machine.</p>\n<p>While I was at it, I also made it possible to emulate Android apps.</p>\n<p>Reference: <a href=\"https://docs.flutter.dev/get-started/install/windows\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Windows install | Flutter</a></p>\n<h3 id=\"install-flutter-sdk\" style=\"position:relative;\"><a href=\"#install-flutter-sdk\" aria-label=\"install flutter sdk permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Install Flutter SDK</h3>\n<p>First, download the Flutter SDK from <a href=\"https://docs.flutter.dev/get-started/install/windows\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Windows install | Flutter</a> and extract it on the Windows machine.</p>\n<p>At the time of writing, I used the latest version, <code class=\"language-text\">flutter_windows_2.10.3-stable.zip</code>.</p>\n<p>After extracting the downloaded Flutter SDK, copy the extracted <code class=\"language-text\">flutter</code> folder directly under <code class=\"language-text\">%USERPROFILE%\\Documents\\</code>.</p>\n<p>As long as the folder can be managed with user privileges, it seems fine to place the Flutter SDK somewhere other than directly under <code class=\"language-text\">%USERPROFILE%\\Documents\\</code>.</p>\n<h3 id=\"configure-environment-variables\" style=\"position:relative;\"><a href=\"#configure-environment-variables\" aria-label=\"configure environment variables permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Configure environment variables</h3>\n<p>Next, add the Flutter SDK you just placed to PATH.</p>\n<p>If you placed the SDK in the same folder as the official documentation, adding <code class=\"language-text\">%USERPROFILE%\\Documents\\flutter\\bin</code> to PATH is enough.</p>\n<p>Restart the OS so the PATH change is applied.</p>\n<p>To verify that the PATH is set correctly, open Command Prompt in any folder and run <code class=\"language-text\">where flutter dart</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">$ where flutter dart\nC:\\Users\\kash1064\\Documents\\flutter\\bin\\flutter\nC:\\Users\\kash1064\\Documents\\flutter\\bin\\flutter<span class=\"token punctuation\">.</span>bat\nC:\\Users\\kash1064\\Documents\\flutter\\bin\\dart\nC:\\Users\\kash1064\\Documents\\flutter\\bin\\dart<span class=\"token punctuation\">.</span>bat</code></pre></div>\n<p>If the paths for <code class=\"language-text\">flutter</code> and <code class=\"language-text\">dart</code> are displayed as shown above, you are good to go.</p>\n<h3 id=\"install-the-flutter-plugin-for-vscode\" style=\"position:relative;\"><a href=\"#install-the-flutter-plugin-for-vscode\" aria-label=\"install the flutter plugin for vscode permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Install the Flutter plugin for VSCode</h3>\n<p>If you use Flutter in VSCode as your IDE, you need to install the Flutter extension in VSCode.</p>\n<span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \">\n      <a class=\"gatsby-resp-image-link\" href=\"/static/5cdb987136320bc5dcc8b011a13a98cc/0d0e4/image-20220308221433272.png\" style=\"display: block\" target=\"_blank\" rel=\"noopener\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 88.33333333333333%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAACXBIWXMAAAsTAAALEwEAmpwYAAADWUlEQVQ4y3VUTW/TWBTtthLthqIkjr/tZ8cfsZ2P0sRpp22gVZIG2mqkkWYzzPApKF2yYc2eJT9g9rMaaVYjDfML+gdYUBDVaCQEXYAQRId7X9MorcDS9Xt+9jv33HPP80wURUjSBJ7rwjZNiEoIl+au8CAoXFfAmQpXhvvdmFFVFWVFgW6Y6Nx7jOCHHpIoRC1L4QkXlqHDUBVYWhGGVoZG3+u6/s3QNA0zDKQWC4jW+rj67G947S6CpImstYIwayJpthEnCfLLGaKsAdV0aKMKJnI+GHRGO0VXitB6N1GKc4T5FdR37yLt/Yxs6xfEGz8huX4b1eFviDsb8Im5EAKe501GLveE4ZiqSfrpBMqMhW0g8ByEnivHwPdg20KWbuqq/HY6LMuS4wSQ6SZUVpUiqFQQhNQYyuzTnMdKEEgmXI02RUCSGO8/1XHCkGkHYSSzqeUydFrjD7Wp0aR3luNC1XQCs1Cr1ZCmqUxmGMZZhllWQ7O1jLzdRqfTQSvvIO8sY2VlGcv03Gg0EAgbgaPDI2sxgTiOZWUxWW/SZb7xw2AwoM0rWFpaQjtvo9XOKVpYXLyMpWaGzV8fofHoD6S3nqL/5C9c2/mRbMWyBLDGpU8AWYu1tTUoCpVK1Fn4SxcXcHFhAYVCARfm53Djzn28HQFvPgIHL46wtbUFM2zBrNSpwvJZQK5/nQAN0shwSHzKrNoWtDKZnvScm5vDwwf3wdfo0wccvT7E9WtD6CKF5cUTnU98OGaY5zmJrZHHBKJaHaZPQmsnWRlwf38fn798wbv37/Hy5SF2dnZQjSMsNpuyOdIF0yVzI9gSJrENgwpsPtscjoP5+XkJOBqNcHx8jFeHh9je3obv+wjJGXFchU9NUqcB29Rdhc40z5NqVXqwSO8KZObZ2VkJeHod/fe/ZFgqlWSpLMuZklnDbrdL2U7sUCEwwceKGHJm3rC3t4eDgwP88/w5fv/zX+zu7sp13nv250ATfrG6uorhcIh+v08xwECOm9jc3ECv15O2Yp3r9TrW17vk22xi5uk/ztjYGiqkB4vsug4c6rDr2KSnjlKxCKVEoZQmZZ1KY9v2twH5HycCOsfpIgxBrncC6G4MS9CZ9kNai2HSumHatEmTIA41i4/pecCvJ7k74rQ84eUAAAAASUVORK5CYII='); background-size: cover; display: block;\"></span>\n  <picture>\n          <source srcset=\"/static/5cdb987136320bc5dcc8b011a13a98cc/8ac56/image-20220308221433272.webp 240w,\n/static/5cdb987136320bc5dcc8b011a13a98cc/d3be9/image-20220308221433272.webp 480w,\n/static/5cdb987136320bc5dcc8b011a13a98cc/e46b2/image-20220308221433272.webp 960w,\n/static/5cdb987136320bc5dcc8b011a13a98cc/fc6cc/image-20220308221433272.webp 1230w\" sizes=\"(max-width: 960px) 100vw, 960px\" type=\"image/webp\">\n          <source srcset=\"/static/5cdb987136320bc5dcc8b011a13a98cc/8ff5a/image-20220308221433272.png 240w,\n/static/5cdb987136320bc5dcc8b011a13a98cc/e85cb/image-20220308221433272.png 480w,\n/static/5cdb987136320bc5dcc8b011a13a98cc/d9199/image-20220308221433272.png 960w,\n/static/5cdb987136320bc5dcc8b011a13a98cc/0d0e4/image-20220308221433272.png 1230w\" sizes=\"(max-width: 960px) 100vw, 960px\" type=\"image/png\">\n          <img class=\"gatsby-resp-image-image\" src=\"/static/5cdb987136320bc5dcc8b011a13a98cc/d9199/image-20220308221433272.png\" alt=\"image-20220308221433272\" title=\"image-20220308221433272\" loading=\"lazy\" style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\">\n        </picture>\n  </a>\n    </span>\n<p>Reference: <a href=\"https://docs.flutter.dev/development/tools/vs-code\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Visual Studio Code | Flutter</a></p>\n<h3 id=\"create-a-test-app\" style=\"position:relative;\"><a href=\"#create-a-test-app\" aria-label=\"create a test app permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Create a test app</h3>\n<p>After installing the Flutter extension in VSCode, choose <code class=\"language-text\">New Project</code> from the Command Palette to generate a project for a test app.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 778px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/12e6283dc692a28b724c9efb4eb83c7c/20982/image-20220308221713170.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 28.750000000000004%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA5ElEQVQY062PzU7CQBSF+w7ohjI/iGKwEKvMT0vaqVFCAqXYqBtXxKXv/wDHO0MwwIYNi2/OzZmTm3Oj3BoYraCVCpoZDeuhOc8sXiqHypVwZbH7I9/uMwdZNZ3iKU0R6dU31OIDz/MW6es7Rq5GUjX/jMo6eA9ufeTv8f7jW4tJVaPbY4h6y19M6i3S5gfj1RZx+YVru8GV2QQ9wpxAXkc3iItPDFyLmAlESTanUxRmdN6M6he5RXI/xG1fYnjTx90ZdhmJgRTgnBpyzmkQYF6FgJAyKOMi+Oc4zDFGC/1zKXy5P+fOtqahyVJPAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/12e6283dc692a28b724c9efb4eb83c7c/8ac56/image-20220308221713170.webp 240w,\n/static/12e6283dc692a28b724c9efb4eb83c7c/d3be9/image-20220308221713170.webp 480w,\n/static/12e6283dc692a28b724c9efb4eb83c7c/10884/image-20220308221713170.webp 778w\"\n              sizes=\"(max-width: 778px) 100vw, 778px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/12e6283dc692a28b724c9efb4eb83c7c/8ff5a/image-20220308221713170.png 240w,\n/static/12e6283dc692a28b724c9efb4eb83c7c/e85cb/image-20220308221713170.png 480w,\n/static/12e6283dc692a28b724c9efb4eb83c7c/20982/image-20220308221713170.png 778w\"\n            sizes=\"(max-width: 778px) 100vw, 778px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/12e6283dc692a28b724c9efb4eb83c7c/20982/image-20220308221713170.png\"\n            alt=\"image-20220308221713170\"\n            title=\"image-20220308221713170\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>For the next option, select <code class=\"language-text\">Application</code>.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 755px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/50317cfc2a7077507ff50ebe553561d1/cab43/image-20220308221900711.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 47.5%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAAAsTAAALEwEAmpwYAAABj0lEQVQoz3WSTU/CQBCGe1TjxZhgYgwt0g/a3e3SQlsKyoegBBUP6sWb/gM06tGrP/t1dgu1Jnh4MjPv7M7OdGpkeR9pL0emKfw0y5GkGQbnQ0xnV7iYXmIynelckvUov51OtwtjPF/ibLpAPpljMFsgHkwQ5SN0BmPE/RHavSHFBXF/rPVO/5d4Y+meZXsw2Ms3mk9fOFh+4PDuU7O/eMPu1Qp789c/7M5X26GzO4t31FgOI7p9hj26R3N4D3f8AG/yiJN8iVpyjaPkpkIRK73K0ZpausSxw2HkaYKQ+RCBD+63NG3OiACRYBAUKxsJXupxyNFtS0gWwD1taLxmA1a9DuN8OIKUEbgIIUIJISQ4D8G4IE1qvbSkt1oBbNuF7XiEW7COTdOiDmlzQUCdqIJruCpGbNN8n7pyva2UBf+7XMRCo2LGOEKaQiFlW+eVjaJIa6Zp0sj0rylRHd4UCvXoRWGVqz6ozlUfVTg0tkJ3aNsOfQN7LTplUvmu68LzWqWvqPobGg1aiGWhTkv5ARIDOfpL23ggAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/50317cfc2a7077507ff50ebe553561d1/8ac56/image-20220308221900711.webp 240w,\n/static/50317cfc2a7077507ff50ebe553561d1/d3be9/image-20220308221900711.webp 480w,\n/static/50317cfc2a7077507ff50ebe553561d1/a149a/image-20220308221900711.webp 755w\"\n              sizes=\"(max-width: 755px) 100vw, 755px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/50317cfc2a7077507ff50ebe553561d1/8ff5a/image-20220308221900711.png 240w,\n/static/50317cfc2a7077507ff50ebe553561d1/e85cb/image-20220308221900711.png 480w,\n/static/50317cfc2a7077507ff50ebe553561d1/cab43/image-20220308221900711.png 755w\"\n            sizes=\"(max-width: 755px) 100vw, 755px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/50317cfc2a7077507ff50ebe553561d1/cab43/image-20220308221900711.png\"\n            alt=\"image-20220308221900711\"\n            title=\"image-20220308221900711\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Once the project was created, the tree looked like this.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 924px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/4815e769ef6fe0fd42a640f9dbc4a0fa/9a1cf/image-20220308221923639.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 72.08333333333333%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAAAsTAAALEwEAmpwYAAACUUlEQVQ4y1VTWXbbMBDTQSqJu1Zqs2V5S17y0o/e/0IohorS+gPPpExiMMAwe//6g9v9jvv9gW274nK5JJzXC+6PBx6Pe9ovywnTNGOaZ8zLgnlesPLMtm3p3vV6Tevs99cXD068tKVLdd3AGAtjHZo+oiXqEBCbgK7rUFcVjNawhFYaZVm+IFvXFTEOqYooCL6C94GkBqVS0FWPiiRj49EGj8Y71M6gtgbOaORFgaLIf5Bdbzf0fZ/aqgKrWwvnPLSW6gq+qnFaBri6RREcjHPIf+U7ciEpXpBJ79O00LONLUU0TZdgSayoUApYEpXGQbkATYWFVtxrFGXxQirrTIyc5jMu24MerlQ70oKZKsPui62h6KOdBvg4wQ8DTNvCMxTfsjDtKXJReyhky2L26XRGoPmWYewtm9S2ln1Tw9JD7USxfBMYGE97Kgdtyt1LkmYyFpFVPz4+cT6vKeE9FMsUFWzXo+cEDEuEiS10bBhU+FbnUtsJR8s3KhzHmfP2xErCiiGEUKeUU9Jsux/OaNlit06IywhPdcX3yOT5aziJcGDKZ7YsCmUeZRalZQmm5CHHvW8bqhVltMVpKF1C2ZKpKyjzjziFMg4j3t7eE3oGIB4mhXZXKJeNJwItqDTXmkU4h41Jext2iMeJsGN62/WWno4EcxAmhYlQIfQW9eT56xCiQ0XI2rf0vLPpf/mWPZ/Pn+d2JHy8lMNDUWhrkkZebjRCa0h0wO5FSCjrbOFDF8KDSCAz+L9CzXXoG1QDMXZwkaFxXGRsSlUkD6VoSfwF4cKZ9vjTwxoAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/4815e769ef6fe0fd42a640f9dbc4a0fa/8ac56/image-20220308221923639.webp 240w,\n/static/4815e769ef6fe0fd42a640f9dbc4a0fa/d3be9/image-20220308221923639.webp 480w,\n/static/4815e769ef6fe0fd42a640f9dbc4a0fa/c3b05/image-20220308221923639.webp 924w\"\n              sizes=\"(max-width: 924px) 100vw, 924px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/4815e769ef6fe0fd42a640f9dbc4a0fa/8ff5a/image-20220308221923639.png 240w,\n/static/4815e769ef6fe0fd42a640f9dbc4a0fa/e85cb/image-20220308221923639.png 480w,\n/static/4815e769ef6fe0fd42a640f9dbc4a0fa/9a1cf/image-20220308221923639.png 924w\"\n            sizes=\"(max-width: 924px) 100vw, 924px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/4815e769ef6fe0fd42a640f9dbc4a0fa/9a1cf/image-20220308221923639.png\"\n            alt=\"image-20220308221923639\"\n            title=\"image-20220308221923639\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<h3 id=\"build-the-application\" style=\"position:relative;\"><a href=\"#build-the-application\" aria-label=\"build the application permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Build the application</h3>\n<p>Once the project is ready, pressing F5 automatically builds the application.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 960px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/01601657b1455bb8465bf8d718ac01ef/33a7b/image-20220308222156823.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 53.75%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAYAAAB/Ca1DAAAACXBIWXMAAAsTAAALEwEAmpwYAAABuklEQVQoz21SWa6jMBDkIAHvBrMGsQTQS4aQyZPmZ+5/m5q28zIKEh8lN8Zdrq5ytGxP3G43PB4PPJ9PrOuKeVlwvV4JX5jmBV3XB/T9gGEcw7/7tmHbHrjfV3x//8av9Y5+GBENQ4eu7wOpb6jrBsamKJszXF7AGYXcOZRFAWsMpBAQXIQzxlhYa+AcrZkDFxLRNE/UUCBNM0ipwiGlFDjVOitR0+HC6kCcaQUrBThnOJ1OiAmnD8RxjOj252+4TWsdyDwEqWCMo24qnNsWiaU9uuTVGIfGJEkOEY3ThWRnRGg+CCWp4BBSggWQYiJktMcERxIngfRN/K6Dwss0EmG6I5TSE9JoxkG1NUxVw9YVVFnAnM8wWUaXiUOl0bxMO0KtbfDSK9QURFblEJqTQgpDS0jyUhoZ9t7qdoQ+lD2heYVCo5miRNMNcEMLQ0qlT9mkYNTovTz00I+cfnj4ItQhGMElXNMibXJ6Rjm0IlUsphfAKCS+8+6/h+NlPBz5lTSjURMaj1Ya0Y+prCCVHhzSW/FD7sHoOZGH86FCH0ySMKiUVLYGaaVhS4W0ppVqk//Ufo++fa2dxD8xlD86WiTt7gAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/01601657b1455bb8465bf8d718ac01ef/8ac56/image-20220308222156823.webp 240w,\n/static/01601657b1455bb8465bf8d718ac01ef/d3be9/image-20220308222156823.webp 480w,\n/static/01601657b1455bb8465bf8d718ac01ef/e46b2/image-20220308222156823.webp 960w,\n/static/01601657b1455bb8465bf8d718ac01ef/03b0b/image-20220308222156823.webp 1119w\"\n              sizes=\"(max-width: 960px) 100vw, 960px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/01601657b1455bb8465bf8d718ac01ef/8ff5a/image-20220308222156823.png 240w,\n/static/01601657b1455bb8465bf8d718ac01ef/e85cb/image-20220308222156823.png 480w,\n/static/01601657b1455bb8465bf8d718ac01ef/d9199/image-20220308222156823.png 960w,\n/static/01601657b1455bb8465bf8d718ac01ef/33a7b/image-20220308222156823.png 1119w\"\n            sizes=\"(max-width: 960px) 100vw, 960px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/01601657b1455bb8465bf8d718ac01ef/d9199/image-20220308222156823.png\"\n            alt=\"image-20220308222156823\"\n            title=\"image-20220308222156823\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>By default, DevTool is configured, and you can interact with a desktop-app UI like this.</p>\n<span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 750px; \">\n      <a class=\"gatsby-resp-image-link\" href=\"/static/c6bb7de6f3815ff88ca3da6a22a265ec/1d69c/image-20220308222254153.png\" style=\"display: block\" target=\"_blank\" rel=\"noopener\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 96.25000000000001%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAYAAACQjC21AAAACXBIWXMAAAsTAAALEwEAmpwYAAABeUlEQVQ4y62Uy0rDQBhG8wpF97oTcaPv4s7X8AlcuKyCbhR0LYJYRBC1booFUbuwhaJoL4rB2pr7bTJp+jkTSYltQmts4DAXZg7fzD9EOCpLOH7oIFf+wmXNQb5GWEuC9qo+BmzP2ZOJm4qI0/sKhLmtTyzuW1jY1TG/88PSno6ZbQ2ZrIapDUY2memsisymgdn1VyyvHULIV9soNi1c1w2GGVBsmMG4MC41HYU3H+e3JQiepQHoMmh6ei741+o0IMiKCpd6cIibGtsh6LJM9fdnCJqmwfM8uK6bGuIS9HygITKhGhFSSlORKIxKR6WKrvktVNWhhGGfz3PiUkXXJwqji2zbDrAsq98PcRxnvIRRKS+WLMtQFAXtdhuSJIGv5WPDMGKFTfEl+cjhcbvsPfBUfI73w/m4Iw8J4y48qVB/Sjh48YOSpGczUjiKcM/khYTAD6r8T2G/gJQEPwfxYwIJfY+ipTlYOaE4uHucjLCj21i9MJErVfENerKgASvJxzEAAAAASUVORK5CYII='); background-size: cover; display: block;\"></span>\n  <picture>\n          <source srcset=\"/static/c6bb7de6f3815ff88ca3da6a22a265ec/8ac56/image-20220308222254153.webp 240w,\n/static/c6bb7de6f3815ff88ca3da6a22a265ec/d3be9/image-20220308222254153.webp 480w,\n/static/c6bb7de6f3815ff88ca3da6a22a265ec/08b4d/image-20220308222254153.webp 750w\" sizes=\"(max-width: 750px) 100vw, 750px\" type=\"image/webp\">\n          <source srcset=\"/static/c6bb7de6f3815ff88ca3da6a22a265ec/8ff5a/image-20220308222254153.png 240w,\n/static/c6bb7de6f3815ff88ca3da6a22a265ec/e85cb/image-20220308222254153.png 480w,\n/static/c6bb7de6f3815ff88ca3da6a22a265ec/1d69c/image-20220308222254153.png 750w\" sizes=\"(max-width: 750px) 100vw, 750px\" type=\"image/png\">\n          <img class=\"gatsby-resp-image-image\" src=\"/static/c6bb7de6f3815ff88ca3da6a22a265ec/1d69c/image-20220308222254153.png\" alt=\"image-20220308222254153\" title=\"image-20220308222254153\" loading=\"lazy\" style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\">\n        </picture>\n  </a>\n    </span>\n<p>You can also click the device name in the lower-right corner of VSCode and switch the emulator used during the build to a browser or an Android emulator.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 742px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/a281b9d1ed97f2b8aa70ba5475bd688e/0f2bc/image-20220308222525632.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 31.25%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAAAsTAAALEwEAmpwYAAABA0lEQVQY043PPUvFMBgF4P4LRUT7laQ2SW3TNibp7cctDqI4iOKgLg4ud/D/b8e0F0EELw4PJ8N5kzeB0gbDNKOftujHLVw/Qhu3ahdX9m9rx6LxZ207iLJGwOYn1M+fyO8/kNy843h6/Zej8QUn8xuqx91KPuxwau4QSKWxub6FchNo0SDKS5xRuTpnEmFWHBRlAhHzMt9PLxAIzuGsgTMGum2gqhIizyGFAPdJ0xSUkH3+RhmY0GB5BcZrJHHiN5QFnOswDCO6TQ9r3appNVTd4LKsIESBlFAQwrwfSTMQfxnxv6JcIU4IAuJfz5eNpPSDe5wLhGHoRYii+DDf+7bMfAE427r9gNAQhAAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/a281b9d1ed97f2b8aa70ba5475bd688e/8ac56/image-20220308222525632.webp 240w,\n/static/a281b9d1ed97f2b8aa70ba5475bd688e/d3be9/image-20220308222525632.webp 480w,\n/static/a281b9d1ed97f2b8aa70ba5475bd688e/28367/image-20220308222525632.webp 742w\"\n              sizes=\"(max-width: 742px) 100vw, 742px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/a281b9d1ed97f2b8aa70ba5475bd688e/8ff5a/image-20220308222525632.png 240w,\n/static/a281b9d1ed97f2b8aa70ba5475bd688e/e85cb/image-20220308222525632.png 480w,\n/static/a281b9d1ed97f2b8aa70ba5475bd688e/0f2bc/image-20220308222525632.png 742w\"\n            sizes=\"(max-width: 742px) 100vw, 742px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/a281b9d1ed97f2b8aa70ba5475bd688e/0f2bc/image-20220308222525632.png\"\n            alt=\"image-20220308222525632\"\n            title=\"image-20220308222525632\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>If you want to use an Android emulator, you need to install it in advance with Android Studio or Visual Studio.</p>\n<p>Reference: <a href=\"https://developer.android.com/studio/install?hl=ja\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Install Android Studio  |  Android Developers</a></p>\n<p>At this point, I was able to set up a Flutter environment on Windows and run an Android app.</p>\n<p>The whole process took about 10 minutes, so it was very easy to set up.</p>\n<span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 624px; \">\n      <a class=\"gatsby-resp-image-link\" href=\"/static/c8b9afc88851aeb176787757b557b330/39c09/image-20220308222837488.png\" style=\"display: block\" target=\"_blank\" rel=\"noopener\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 186.66666666666666%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAlCAYAAABCr8kFAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEgklEQVRIx62W21NbVRTGT2kpJSRAgYBAICQ5uVgEtKShKJdipYg+OKOPWi9/gSQhNEJIUulUkZt10E7bqcNVi8A446jjjM8++oDWhz7hTLkWIRpyT8Pn3juccMpQCoUz881aa5+dX9bae+1kc/XnGvCs3gBZSjJkJ47jZJoEmZJUEh9H+okUnJRKmJUcO4rUY0lIPsLhKMch6UgS0iRpSE/PgNvtBn2+vD4I7uyZSmTmKiDVvYQ0/iwyDLVI19cQvxoy7YskrkE6eSclcaqmGrmlNVBWvgxeV4H8Ii2SklPg7OxEOBrDtcHPwZ0+/ybKu35Dtvsu5K4ZZDtnkENswifKInrG/Qfy3DMwfPYXGm79jVcHfkfL5THoTc2wX2pDJAb0D/SDK3vnY5jGgdcn/KgdDaDpTpDZhvEAzn8TxDlimyeCKL/th2LQj6JBHwqueSEfDKHiiwcw1b2PdruNldzfT4DGtx2oH/XhjW89uDDqwWvjHjQS2zTmQTPxXxnx4K2Jf1E/5MHzN9ZQeYvKA+ONFVSSREo+uA5Hm3kLaG/vxMp6GPdXvFhYXcc8kWAF//4/61hcW8cDjw/LHmpJvPofQqTMr25+DYvFgigB9vT2gnO74jsUi4ax8TBCFH2sYiJFwyH2udGREZjNFmwQv6+vD5yLADc2NhAKhRAKh/esQCDIgENDw2ghQH/kIXop0EkzJPgwmUQViUSeKDovGIwDh4eH4bRfgscfQk8PKdnZ6WIvaIZPAxwdHkGfy8H8gYEBcA6H40DAEQK86mhnPlvDjo6OAwFpyVZr6yaQto3dfmBga2vrVh/abLZDA7KSrVbrwYCkbdpsbVubQrtcDNyrxBmaW+JHr7u7m2Ro2cpwL9kJEoBTk1MoKSmByWSCwWAgGZrjGdIJgiic2kAgkPC3i76jz/T0NOQ5chQUFKCwsHAL6Pf7sby8jIWFBSwuLmJ+fp5pbm6OiY4tLS2x93Tc6/XGgVPTyM3NhUqlQnFx8ZPXcHZ2ln2ZsBnb11AAKpXKTaB5912msJ3GHwHKxUCLddcMxa3yuAzlYuBOfbgTSDy+K3D7Gu63sdkuEyBtncMDkrahsKKiooMfPVoy7UGe17CyE334tEB6UvTk5mE0noFOrz+EkkmG+Xl50KpVUO13DcW77PNvZjg1BXVBPowGHUpJ2fvOUJiDWBw4SUrmFYUo1/Eo49X7W0Nxht/96cPdNeCH76dRnJ+PCgJ8jgJbPmxBLBaDz+djvyC7ad3nB6IB/HrPC8knq2iajGJo7A5UpOQX9FqUa0nJH23+p+znWSMVv/tjGDfvAb/8/BOysnOgKFaiUEH6sLHxAlwuF+jfqdPpZH4nue8J6urqYuNCTP1Pr15Bh70NVy478d7Fi6yhlWSH2UnJypKDIzdSqhx5DmQyWSKmqqqqeiSmqq2rS/j0JqvRaKBQKOJA7SkjMjMyIUmVQCaVMUnTpAmJY3oFlkriPp1PxY4dOSE0SwZUl1bjVNlp6HV68BoeWl4LrVYXF/F5Gm8bE2K1Ss0gYv0P2jX7NBL/XXEAAAAASUVORK5CYII='); background-size: cover; display: block;\"></span>\n  <picture>\n          <source srcset=\"/static/c8b9afc88851aeb176787757b557b330/8ac56/image-20220308222837488.webp 240w,\n/static/c8b9afc88851aeb176787757b557b330/d3be9/image-20220308222837488.webp 480w,\n/static/c8b9afc88851aeb176787757b557b330/b5732/image-20220308222837488.webp 624w\" sizes=\"(max-width: 624px) 100vw, 624px\" type=\"image/webp\">\n          <source srcset=\"/static/c8b9afc88851aeb176787757b557b330/8ff5a/image-20220308222837488.png 240w,\n/static/c8b9afc88851aeb176787757b557b330/e85cb/image-20220308222837488.png 480w,\n/static/c8b9afc88851aeb176787757b557b330/39c09/image-20220308222837488.png 624w\" sizes=\"(max-width: 624px) 100vw, 624px\" type=\"image/png\">\n          <img class=\"gatsby-resp-image-image\" src=\"/static/c8b9afc88851aeb176787757b557b330/39c09/image-20220308222837488.png\" alt=\"image-20220308222837488\" title=\"image-20220308222837488\" loading=\"lazy\" style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\">\n        </picture>\n  </a>\n    </span>\n<h3 id=\"check-the-setup\" style=\"position:relative;\"><a href=\"#check-the-setup\" aria-label=\"check the setup permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Check the setup</h3>\n<p>You can diagnose the environment by running the <code class=\"language-text\">flutter doctor</code> command in PowerShell or similar.</p>\n<p>If everything has been set up correctly, it will output <code class=\"language-text\">No issues found!</code> like this.</p>\n<div class=\"gatsby-highlight\" data-language=\"powershell\"><pre class=\"language-powershell\"><code class=\"language-powershell\">flutter doctor\nRunning <span class=\"token string\">\"flutter pub get\"</span> in flutter_tools<span class=\"token punctuation\">.</span><span class=\"token punctuation\">.</span><span class=\"token punctuation\">.</span>                       7<span class=\"token punctuation\">.</span>9s\nDoctor summary <span class=\"token punctuation\">(</span>to see all details<span class=\"token punctuation\">,</span> run flutter doctor <span class=\"token operator\">-</span>v<span class=\"token punctuation\">)</span>:\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> Flutter <span class=\"token punctuation\">(</span>Channel stable<span class=\"token punctuation\">,</span> 2<span class=\"token punctuation\">.</span>10<span class=\"token punctuation\">.</span>3<span class=\"token punctuation\">,</span> on Microsoft Windows <span class=\"token namespace\">[Version 10.0.19044.1526]</span><span class=\"token punctuation\">,</span> locale ja-JP<span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> Android toolchain <span class=\"token operator\">-</span> develop <span class=\"token keyword\">for</span> Android devices <span class=\"token punctuation\">(</span>Android SDK version 31<span class=\"token punctuation\">.</span>0<span class=\"token punctuation\">.</span>0<span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> Chrome <span class=\"token operator\">-</span> develop <span class=\"token keyword\">for</span> the web\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> Visual Studio <span class=\"token operator\">-</span> develop <span class=\"token keyword\">for</span> Windows <span class=\"token punctuation\">(</span>Visual Studio Community 2019 16<span class=\"token punctuation\">.</span>11<span class=\"token punctuation\">.</span>10<span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> Android Studio <span class=\"token punctuation\">(</span>version 2021<span class=\"token punctuation\">.</span>1<span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> VS Code <span class=\"token punctuation\">(</span>version 1<span class=\"token punctuation\">.</span>65<span class=\"token punctuation\">.</span>0<span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> Connected device <span class=\"token punctuation\">(</span>3 available<span class=\"token punctuation\">)</span>\n<span class=\"token punctuation\">[</span>✓<span class=\"token punctuation\">]</span> HTTP Host Availability\n\n No issues found!</code></pre></div>\n<h2 id=\"create-a-flutter-development-environment-on-macos\" style=\"position:relative;\"><a href=\"#create-a-flutter-development-environment-on-macos\" aria-label=\"create a flutter development environment on macos permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Create a Flutter development environment on macOS</h2>\n<p>The procedure is basically the same as on the Windows machine.</p>\n<h3 id=\"install-flutter-sdk-1\" style=\"position:relative;\"><a href=\"#install-flutter-sdk-1\" aria-label=\"install flutter sdk 1 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Install Flutter SDK</h3>\n<p>Now set up the Flutter development environment on macOS as well.</p>\n<p>Reference: <a href=\"https://docs.flutter.dev/get-started/install/macos\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">macOS install | Flutter</a></p>\n<p>Just as on the Windows machine, download the SDK from <a href=\"https://docs.flutter.dev/get-started/install/macos\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">macOS install | Flutter</a>, extract it, and add it to PATH.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 398px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/ee7edf56a4fff1f833c5e8ad74141980/692d4/image-20220308223445666.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 45.833333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAJCAYAAAAywQxIAAAACXBIWXMAAAsTAAALEwEAmpwYAAABT0lEQVQoz43Q2U7CQBiG4d6AipJY2+kCKhSooXSj1LQ0tKyBaEI8cQnRmHjgypV5Ax54Xxrz2ZkoMajAwZPOTDtv/pSzstc42LqCnrnE4eYNWtu3aPHUHRPz90zCP6DNPzJd/gk9for+zhQjYYrO2gQvz694/3gDp2fPcVxu4zQIUU9CVPUAViGAqYWwmCZsqtSEU4pQr7TmxOm7CEeDMS7OJuBK2TF6loOT2EEwasCPAvheA57nwbEdxk6ZpgmjaqBY1KBpv+3m9qHKeXBaZgg/jNDuD9GN+/BcD67rombUYBgGQ2O6rqNSrkAURIgimSNCkkhKAlfIDFgkSeJUgiBIJ/R9FrUsK53OZhPSNQ0LgsAu/ofb2+hAlhW2oU9VVaEoygzdf5/JsgxCyOJgfj2GRCT24SropZ/rv4OSPPsHyyydMPcVJDRIpJWii3wC1RUNQkQ/IuAAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/ee7edf56a4fff1f833c5e8ad74141980/8ac56/image-20220308223445666.webp 240w,\n/static/ee7edf56a4fff1f833c5e8ad74141980/579c2/image-20220308223445666.webp 398w\"\n              sizes=\"(max-width: 398px) 100vw, 398px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/ee7edf56a4fff1f833c5e8ad74141980/8ff5a/image-20220308223445666.png 240w,\n/static/ee7edf56a4fff1f833c5e8ad74141980/692d4/image-20220308223445666.png 398w\"\n            sizes=\"(max-width: 398px) 100vw, 398px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/ee7edf56a4fff1f833c5e8ad74141980/692d4/image-20220308223445666.png\"\n            alt=\"image-20220308223445666\"\n            title=\"image-20220308223445666\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>In my environment, the shell was zsh, so I added the following command to <code class=\"language-text\">~/.zshrc</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\"><span class=\"token environment constant\">PATH</span></span><span class=\"token operator\">=</span><span class=\"token environment constant\">$PATH</span>:<span class=\"token operator\">&lt;</span>path to Flutter<span class=\"token operator\">></span></code></pre></div>\n<p>As before, you can confirm that it has been applied with the <code class=\"language-text\">where</code> command.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 583px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/aff82369104cc9c9f172cd8ce0a5db81/9fc4b/image-20220308225050712.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 65.41666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAAAsTAAALEwEAmpwYAAABUklEQVQ4y9WT22qDQBCGfYcUT7tW6yGGNKHFqKs1B6NRcuqF71Ha97/6u7tgUoRACr3pxYcwO/PN7OIotVfiUDHMYoZ5kGA2Sfg3wjw5gK06rNIaLCqRvKyRLbbYZHvEsyWPrbBvj6irFqfDO6qywefHF5S3V36w36BqKjS7HdI0RZ4xrLdbSVluOCWm0ylc94njwnZsUMuCaRIQAaEYjR5QFEsoKe9+PB1xPp3RdR3qukbTtlgWBZI4BmOZbDIeh/B9H7pucAGRUEolFpfruoYoWkDxHp8RTgKE4QRBEMC2bTmFSDIMg09hXugFQ0SuqqrIsgwK0TwYpiaLBaKzKP45QU8fG571wjzPoVDd5+9Bbna/Jb0pJLrHg6Z82Hul/12o/bnQvQrvZNh8cOWrkFByF5SSy88t6IWMMSim6soESqxfTSgkjuPwWkuuodgUsWXf6nBsURw1lYEAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/aff82369104cc9c9f172cd8ce0a5db81/8ac56/image-20220308225050712.webp 240w,\n/static/aff82369104cc9c9f172cd8ce0a5db81/d3be9/image-20220308225050712.webp 480w,\n/static/aff82369104cc9c9f172cd8ce0a5db81/92613/image-20220308225050712.webp 583w\"\n              sizes=\"(max-width: 583px) 100vw, 583px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/aff82369104cc9c9f172cd8ce0a5db81/8ff5a/image-20220308225050712.png 240w,\n/static/aff82369104cc9c9f172cd8ce0a5db81/e85cb/image-20220308225050712.png 480w,\n/static/aff82369104cc9c9f172cd8ce0a5db81/9fc4b/image-20220308225050712.png 583w\"\n            sizes=\"(max-width: 583px) 100vw, 583px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/aff82369104cc9c9f172cd8ce0a5db81/9fc4b/image-20220308225050712.png\"\n            alt=\"image-20220308225050712\"\n            title=\"image-20220308225050712\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<h3 id=\"set-up-vscode\" style=\"position:relative;\"><a href=\"#set-up-vscode\" aria-label=\"set up vscode permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Set up VSCode</h3>\n<p>Install the Flutter plugin in the copy of VSCode installed on macOS as well.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 948px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/94a257e4cfd4bdafbadd06bcdd551af7/ecf19/image-20220308225257732.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 49.583333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAAAsTAAALEwEAmpwYAAACIUlEQVQoz0WS227TQBRF8xWoTXOPr2M78W1sx5ckTZyWVtDygBAC8QWIVyTeeUX8DP+3OJkU8bB1xppztvfeZwbPhy26qyh1TVFs0FqQV+RZSVXWVFVjsO927HZH8pe7c/3Xq/UL5DxIMk2eJDJckEhdx4L1muVyia98fNfBspbYacViPsd2HHO3WCyYTCZMZzPG0zmT6ZSZnAe5zon711TdgUJrIYupmg5HBofDIWMZuv3+i/zzV5Tn8/jwSJomghTPV7jLCbE7kh/bpneg0wwra0m7e059T15U7N59xg3X3Fy9wl6lbH//Ifz4jfnCZtX0BGFIFEXE4iZUHulKEYWBUTyoNzVLKyRNNP3pxKaSXA6P2H7AaDRidnPFRPdcV89YQUzUv8eyHeZi/2x3Zuqc8XhsMDg9vEXVR9Kq5Xa/p64b9P4e21PciGVfBSjHwpEcle/h2QvJ1CIIAhPLWanv+5Lf9KIwlyz8uke3B+5EYdu0lP0TjoouhNKc5lqqMorPQxdcFNm2xLBaoZS6KEzkw++2lMeeu/4kCmvq/g2uCmUp19K8Jis7qk0jz0pTlBWFxJKUrVF/JizL0rwMs+VEgnUjh2pXc7w9ylCJ7p9xgxXD6yvzlNq2kRqTiZsozohFROiK9elICB1x1fwnjCPZ2OGJYnti13WGcNPtcVzXWM6yzDQrySyUvELPIrv7gPfpJ+2XHySrANfzTK7nSP4CxOE4QnFmYMMAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/94a257e4cfd4bdafbadd06bcdd551af7/8ac56/image-20220308225257732.webp 240w,\n/static/94a257e4cfd4bdafbadd06bcdd551af7/d3be9/image-20220308225257732.webp 480w,\n/static/94a257e4cfd4bdafbadd06bcdd551af7/af3d9/image-20220308225257732.webp 948w\"\n              sizes=\"(max-width: 948px) 100vw, 948px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/94a257e4cfd4bdafbadd06bcdd551af7/8ff5a/image-20220308225257732.png 240w,\n/static/94a257e4cfd4bdafbadd06bcdd551af7/e85cb/image-20220308225257732.png 480w,\n/static/94a257e4cfd4bdafbadd06bcdd551af7/ecf19/image-20220308225257732.png 948w\"\n            sizes=\"(max-width: 948px) 100vw, 948px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/94a257e4cfd4bdafbadd06bcdd551af7/ecf19/image-20220308225257732.png\"\n            alt=\"image-20220308225257732\"\n            title=\"image-20220308225257732\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>The next steps are exactly the same.</p>\n<p>Create a project for a test app.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 831px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/91a656eef0980b445a7858e08eb4eb31/5b4a1/image-20220308225748275.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 56.25%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAALCAYAAAB/Ca1DAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB8klEQVQoz2WSyZKbQBBE9R8j1t6gQeyLAGlG4PFhLv7/v0lnt+wJK3x4gSg1WVWZffo1f2E/bpiHd8zthqldMXcbFrJ2K9b5J6bxwDhO2LYN12Xxz2EcUdU1mqbxDP2AYRhw+nx8oe0bTPOMtmthiwJCSkilIEhZV6w30FpDsq5Zcyip/LsQwpOmT059veJSXbAsKzuMyDLLgxpKaQgeSIguO9SXEoWWMDJFrgQyokSKIAgQhuE3p6HZUF4KL6i1YZfUd3YkSYI4TmBLi77vkGQ5ZG4QhxHOb2//iXlBN2HbdZjnFXXdIs8LUsLakqKKgjESIRFxzVgQV1MSsVaI+J8TDYJ/BEcG0dPM232nuT2KovKUZe3XdoKptlB9C83GBQMwXF+yubPKGP0yqRd0K7sUszynwfKP2dKv7w1nPWM42nI6w3eSZQzG/Va0JYm+RU9dfaVgidvt7kNxnrlV3XQuNUHjJYOalg3VdUC5TsgLy6S19/h8Pr9OWBUDLhTcHwfu93eu7Xy0XvQpKBDxYM0JTWWRtyWMFgijwE+WiBhRFCI4B16YgiMaevH4eOA4fvi0jcleBaMIccqPlfMz8UiTegTxa6dP8eeEvPH78Yl9P/zVcf79XVkx3ZDXROgURW9gO0M/FWyrkTeaASn/dLjab8MKReoyCRHVAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/91a656eef0980b445a7858e08eb4eb31/8ac56/image-20220308225748275.webp 240w,\n/static/91a656eef0980b445a7858e08eb4eb31/d3be9/image-20220308225748275.webp 480w,\n/static/91a656eef0980b445a7858e08eb4eb31/6d405/image-20220308225748275.webp 831w\"\n              sizes=\"(max-width: 831px) 100vw, 831px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/91a656eef0980b445a7858e08eb4eb31/8ff5a/image-20220308225748275.png 240w,\n/static/91a656eef0980b445a7858e08eb4eb31/e85cb/image-20220308225748275.png 480w,\n/static/91a656eef0980b445a7858e08eb4eb31/5b4a1/image-20220308225748275.png 831w\"\n            sizes=\"(max-width: 831px) 100vw, 831px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/91a656eef0980b445a7858e08eb4eb31/5b4a1/image-20220308225748275.png\"\n            alt=\"image-20220308225748275\"\n            title=\"image-20220308225748275\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>If you install XCode from the App Store in advance, the iOS emulator will be added to the device settings.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 614px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/bc30afca0d29dcd4ab4620088e2b9fc6/e9131/image-20220308225914449.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 29.583333333333332%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAAAsTAAALEwEAmpwYAAABPUlEQVQY003Oy07CUBSF4T6DykRo6YVajtxaSmlLkVJokRhFSTRxgBodGR0w8/V/TytRB1/WXtknOVuJggui8X8z4jCtFMtrVvkN+eKKy2LDenVLlq4Jx+V+TiTFv7IqlXi+ZFLKcpk5cbrAj6eV8TStBMmsyvBCdjn7ccKoepPghhO8UpTQGQYoYvNOuPuid79H3H1SL944mu2oZS+czJ85SZ/+8jDXpGM514tXgsc9ve0Hg4c99WSL4ocJ6XLFZJYxHE8Q/SFO18NwupiS1e5hif5P/lPu7I5H10849yJ5XYzldFDajoPnuhV3MMAfenjydMc5Qzg2ZrOJ3lDRmxqG3jzQMcpu2uht+XnbxRAjdN1EsVo2ltVCN0xUVUXVNGzRIS+muEGE2e1jjzyEEL97VdUOKXujfnCKJvs3N8u/V5glfXYAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/bc30afca0d29dcd4ab4620088e2b9fc6/8ac56/image-20220308225914449.webp 240w,\n/static/bc30afca0d29dcd4ab4620088e2b9fc6/d3be9/image-20220308225914449.webp 480w,\n/static/bc30afca0d29dcd4ab4620088e2b9fc6/5316f/image-20220308225914449.webp 614w\"\n              sizes=\"(max-width: 614px) 100vw, 614px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/bc30afca0d29dcd4ab4620088e2b9fc6/8ff5a/image-20220308225914449.png 240w,\n/static/bc30afca0d29dcd4ab4620088e2b9fc6/e85cb/image-20220308225914449.png 480w,\n/static/bc30afca0d29dcd4ab4620088e2b9fc6/e9131/image-20220308225914449.png 614w\"\n            sizes=\"(max-width: 614px) 100vw, 614px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/bc30afca0d29dcd4ab4620088e2b9fc6/e9131/image-20220308225914449.png\"\n            alt=\"image-20220308225914449\"\n            title=\"image-20220308225914449\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>With that selected, pressing F5 also let me build an iPhone app from the same Flutter source code.</p>\n<span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 480px; \">\n      <a class=\"gatsby-resp-image-link\" href=\"/static/64c373c1879724f8ad2281a95b30acb2/e85cb/image-20220308230039990.png\" style=\"display: block\" target=\"_blank\" rel=\"noopener\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 199.58333333333334%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAYAAAD+MdrbAAAACXBIWXMAAAsTAAALEwEAmpwYAAAFKElEQVRIx62VXUxTZxjHeyVG6AdtaWnLV1v6/QEtrYjyIai0tMXoEt1uJqhTNO5iW5Zl2cwWGO7CuLk4jW4aFMeN2ebtLnazZDeyJQrLXMwkWo2bQCkfgxYKtP897wsIKDNlcJL/ed5zzvv+zvOc5znPK7CpP0Gx+igMucdgVrXAqX0TjqITsJNMmhbSUdIRLiPXYZjVB0hNMGuaSQdh0RwiHUSJuh0CvWof9lisCNaVQOspwa6qRvh37cW28p3Q5TtI9mXSaqxw2SphNZTD7aiB07INNmM5TDonzLmHCZi7ByZVHUwF9dDlbYcxrxbG/Fro1DWk7dBp5qWuJlVxGfKqoVdt5daQvwN6dR10qmpYlMch0Cleg172NhSZZohEWgilZkjkZojFhRCLCkiFXBJRPpdYqIFYQtc5NI/uZ22QQyFywyI/DqfiJARG9evQZHsh3HkU1lN3YGn7FXntf0JUS28TCFZUTtMVaE7dh+P9H9Fyoh0F7koUSLfDrWyFoDinFhLtNuSfHYW3YxqeyxPIPzcFddt9SHa3QxRshTjUxiUKfATpq+eRdyaKonMxWC/Fsf/bBPY3t0K6SYlS1XsQFIrdkDpC0F+Io+B0P/SfR+C5OATXpTGUXk3B25mC++q8rqXg6phF2cVhOM4PQXtmAOqz4yh69yco5DrYFccg0EpcEFkDyP4sDumng1CeHsLmr0dQcXkYzi8jqPgqAu/FCJznI9h8KYISsluvjGDL5RGaH4H89BiEJ+9BrLLDKX8DAlVWKTyVAXz/ewxd3f3o+iWCzluDXNe7I7g2P+7sXm6vk+3qHsCNO2O48MNvKCi0wSYjoCzThMZgCPyYjdMpkb6SU3xZ9GkYJr0dVinVYU6mDQ3+OeB4LI745FTamohPYiaZwoPwQxgIaGNARaYTAX8jB8bjcUxNTaWtyclJpFLAo0cPYeRACjlHaEKgIbQMmEgk0tIiMExA9g1ZyEIjAoG1AFNzQIMZNnkzhZxlXaOHS4CyJgiUQts6Ag8QUGRep5BNc8Dc9QIWW2CX0TfUiEoRbGhcY5bnysbByqZI7CHg7nUBlkiPUIOVlL0A/L+FXSIjoD570UM2YWZmJm1NT08vA5ay5lAsXfRwbHQMg4ODGBoa4nZgYAD9/f2IRCL8mmnpmD3nSXkc5kAXAxplZQjNA8fHxzksGo0+WzQ8PIxwOExePMLo6OizZ8wy+AKQdRs3A5pyFoErhcwWME8YIJlM8jAXnrHELITMgGUMaFG4EQq8PCkLWX1ZUhjQw5qDTelGY+DFslkKe368UtkwoJcB7bkuAq5c2KsFbmZAq8L5n8B0Czs8D9wiO0S/3iYTgv7QmoFmAm5lQGWGAQHf+gAr54DF6waslh2kjp2hJ2AwbeDSBMUJmKRdjwEtBNzBPFRk6FYNXLAziUm+7uE8sJ5vo6sELsCSMwn0j8QRHpnFX0/CsOjsaODbaIYWDav0cJpsjDb5xm+GYbkwgZu37sNjdsAnIQ/lG7S00c8BY7HYC78We8ky0T0G/GcihoaOpzB8EcWNn/+A1+JEvZi+oXyjFnU1Oznw+f93pSOVSvIXsZAf/B3FvacxPHn8AEWqYgSlLVQ2EhNkEhVu3vyOL2DdhHUVBr179y56enrQ29vLdfv2bfT19fEONE3dBslZvubDjz+AihzbJ3+HkkK7nmSjATKpHFVVlfD7/fD5fKivr0d5eTk8Hg+8Xi8XG1dUVDyb4/P5Uep2QZ6lRJVkL17Jfgv/AqPKgZP3NtmlAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"></span>\n  <picture>\n          <source srcset=\"/static/64c373c1879724f8ad2281a95b30acb2/8ac56/image-20220308230039990.webp 240w,\n/static/64c373c1879724f8ad2281a95b30acb2/d3be9/image-20220308230039990.webp 480w\" sizes=\"(max-width: 480px) 100vw, 480px\" type=\"image/webp\">\n          <source srcset=\"/static/64c373c1879724f8ad2281a95b30acb2/8ff5a/image-20220308230039990.png 240w,\n/static/64c373c1879724f8ad2281a95b30acb2/e85cb/image-20220308230039990.png 480w\" sizes=\"(max-width: 480px) 100vw, 480px\" type=\"image/png\">\n          <img class=\"gatsby-resp-image-image\" src=\"/static/64c373c1879724f8ad2281a95b30acb2/e85cb/image-20220308230039990.png\" alt=\"image-20220308230039990\" title=\"image-20220308230039990\" loading=\"lazy\" style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\">\n        </picture>\n  </a>\n    </span>\n<h2 id=\"summary\" style=\"position:relative;\"><a href=\"#summary\" aria-label=\"summary permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary</h2>\n<p>I have also used Xamarin and React Native as frameworks for building mobile apps that can cross-compile in a similar way, but Flutter felt by far the easiest to set up.</p>","fields":{"slug":"/flutter-setup-mac-and-windows-en","tagSlugs":["/tag/flutter-en/","/tag/android-en/","/tag/i-os-en/","/tag/備忘録/","/tag/english/"]},"frontmatter":{"date":"2022-03-08","description":"","tags":["Flutter (en)","Android (en)","iOS (en)","備忘録","English"],"title":"Notes on setting up a Flutter development environment on Windows and macOS","socialImage":{"publicURL":"/static/611637edbfb6fae520f623ed460ec754/flutter-setup-mac-and-windows.png"}}}},"pageContext":{"slug":"/flutter-setup-mac-and-windows-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}