레이블이 Flutter인 게시물을 표시합니다. 모든 게시물 표시
레이블이 Flutter인 게시물을 표시합니다. 모든 게시물 표시

2023년 9월 16일 토요일

Flutter install & Run (설치하기 하고 실행 해보기)


1. SDK Download

https://docs.flutter.dev/get-started/install

환경 : Windows 11

https://docs.flutter.dev/get-started/install/windows


2. 압축 해제

압축 해제시 path에 공백이 없어야 합니다.

D:\dev\flutter 여기에 압축을 풀었습니다.

3. Path 설정

D:\dev\flutter\bin 를 추가합니다.





4. Visual Studio 설치

Visual Studio : Visual Studio Build Tools 2022 를 설치하면 됩니다.
https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2022
이때 "C++를 사용한 데스크톱 개발" 을 선택하여 설치합니다.

5. Android Studio 설치

Android Studio
https://developer.android.com/studio

설치 후 Android SDK 도 같이 설치해야합니다.



Android SDK Command-line Tools 도 추가로 설치해 줍니다.

6. 편집기 설치

Android Studio를 사용해도 되지만 VS Code를 설치하였습니다.

https://code.visualstudio.com/

설치 후 Flutter Extension 을 설치합니다.



7. 모두 설치가 완료 되었는지 확인하기 

fluutter doctor 실행

cmd 창을 열고 설치한 폴더에서 flutter doctor 를 실행 시킵니다.




필요한 툴들이 제대로 설치되었는지 나타나게 됩니다.
(proxy 환경이라면 flutter 에 HTTP_PROXY, HTTPS_PROXY 환경 변수를 추가한뒤 Flutter를 실행하도록 합니다.)
만약 안드로이드 스튜디오가 제대로 설치되지 않은 경우 아래와 같은 형태로 실행해 줍니다.
flutter config --android-studio-dir=<directory>
일반적으로 Android SDK 를 인식 못하게 되는데
flutter config --android-sdk <directory> 형태로 SDK 경로를 알려줍니다.

위와 같이 뜨게되면 Android toolchain의 license 문제가 있는 경우 입니다.
flutter doctor --android-licenses 를 실행해 줍니다. "Y" 로 모두 답변 합니다.


flutter doctor 를 실행해서 No issue 가 뜰때까지 지속 확인을 해줍니다.

이제 모두 설치가 되었습니다.

8. 간단앱 만들기

VS Code 실행합니다.

8.1 Flutter 프로젝트 만들기


톱니를 선택하여 Command Palette 메뉴를 엽니다.

Flutter를 타이핑 하면 몇개의 명령이 보이는데 그중에 New Project를 선택합니다.


new proejct 선택후 Application을 선택합니다. 약간의 샘플코드가 작성된것을 볼 수 있습니다.



폴더를 정하고 앱이름을 설정합니다. (여기에서는 myapp 이라고 만들었습니다.)
Flutter의 언어는 dart 라는 언어인데 문법이 약간 생소 합니다.

8.2 실행


출력을 윈도우로 두고 실행 버튼을 누르면 윈도우 환경에서 실행 가능한 어플이 뜨게 됩니다.



9. Debug / Profile / Release mode 변경


한번 실행하고 나면 아래에 Release mode 로 변경 가능한 버튼이 나타납니다.




10. 배포

배포를 위해서는 Release mode 로 변경하시기 바랍니다.
빌드 후에는 실행 파일 및 dll 파일 data 폴더가 생성 됩니다.



11. 총평

무료 개발툴에 multi platform 이 매력적일 수 있습니다. 하지만 dart 라는 새로운 언어를 익혀야 하며 해당 언어만 안다고 되는것이 아닌 native가 필요한 경우 각각의 device에 맞는 (안드로이드나 PC, ios를 담당하는) 해당 방식으로 작성을 해야하는 경우가 많습니다.

전반적인 빌드 구성은 게임 엔진인 Unity 나 Unreal의 Multi platform 방식과 비슷합니다.

하지만 위 게임툴들은 새로운 언어를 사용하는 것이 아닌 기존 언어 문법을 그대로 사용하는 차이점이 있습니다.

많이 다뤄본 것은 아니지만 UI 쪽은 좀 더 편하게 작업이 가능하고 멀티 플랫폼 개발이 가능하다는 측면에서 유용합니다.