플러터(Flutter) 예제(Example) – 동영상 플레이어 | video_player, image_picker 플러그인 사용

my-player-app

플러터(Flutter) 예제(Example)로 동영상 플레이어를 만들어 보자. 필수 사용 플러터 플러그인은 video_player, image_picker이다. 네이티브(Native) 권한 설정 갤러리에서 동영상을 불러오기위해 안드로이드와 iOS에 권한을 추가해 주어야 한다. iOS 권한 추가 iOS 권한은 Info.plist 파일에 추가한다. NSPhtoLibraryUsageDescription 권한을 등록해 주어야 갤러리 파일 접근이 가능하다. 안드로이드 권한 추가 안드로이드 권한은 AndroidManifest.xml 파일에 추가할 수 있다. android.permission.READ_EXTERNAL_STORAGE 권한을 추가하면 갤러이 파일을 … 더 읽기

플러터(Flutter) 아이폰을 연결하여 Android Studio로 개발 테스트 중 iproxy 오류 해결 방법

macos-iproxy-issue

“iprox를 열 수 없다”는 메시지 팝업이 바로 디버깅 중인 플러터(Flutter) 앱에서 “흰 화면만 뜨는” 문제의 원인이다. iproxy란? iproxy는 Flutter가 Mac과 iPhone 기기 간의 디버깅 정보를 주고 받는 연결 프로그램이다. 즉, Mac의 Android Studio와 iPhone에서 실행되는 APP 사이의 다리 역할을 한다. 문제(흰 앱 실행 화면)의 원인 macOS의 보안 기능인 Gatekeeper가 Flutter SDK의 iproxy가 Apple에서 정식 인증받은 … 더 읽기

MFC, C++ | CHttpFile, CInternetSession을 이용하여 JSON 파일 읽어오는 예제와 UTF-8 BOM 이슈

http-url-json-file-read

MFC / C++
CHttpFile, CInternetSession
회사에서 투자정보 서버에서 서비스로 제공해 주던 데이터를 갑자기 웹 파트를 통해 URL을 이용하여 JSON 파일(.json)로 데이터를 다운 받을 수 있게 제공해 준다고 하여 웹 URL 상의 JSON 파일을 연결하여 JSON 데이터를 읽어와서 사용해야 하는 경우가 발생했다.

그래서 우리 코드 상에 잘 없는 경우인 Http URL 통신 로직을 본격적으로 추가하게 되었다.

Flutter | Example | BottomNavigationBar, TabBarView, Slider, sensors_plus, shake

flutter-random-dice

플러터(Flutter)는 구글에서 만든 크로스 플랫폼 프레임워크다. 이번 글에서는 Plugin sensors_plus, shake를 이용하여 핸드폰을 흔들면 Random 숫자를 보여주는 주사위 APP를 만들어 봅니다. sensors_plus 패키지(package)와 shake 패키지 sensors_plus 패키지는 핸드폰의 가속도계와 자이로스코프 센서를 편리하게 사용할 수 있게 해줍니다. 하지만 이 패키지만으로는 핸드폰을 흔들었다고 판단할 수 있는 수학적 로직을 알기가 어렵기에 핸드폰을 흔든 정도에 따라 처리를 쉽게 할 … 더 읽기

Flutter | Exercise Example | Cupertino Widget, CupertinoDatePicker, Dialog, StatefulWidget

Flutter Design 플러터(Flutter)에는 두 가지 디자인 시스템이 있다. Material Widget 구글 스타일의 머티리얼(Material) 디자인 위젯이다. Cupertino Widget 애플 스타일의 쿠퍼티노(Cupertino) 디자인 위젯이다. Stateful Widget의 setState({callback function}) 함수 setState() 함수는 인자로 콜백(callback) 함수를 받는다. 콜백(callback) 함수에 클래스가 가진 속성들을 변경하면 해당 코드가 반영되어 build() 함수가 실행된다. setState() 함수 형태에 대한 예시 이와 같이 하면 ‘x++’ 수행 … 더 읽기

플러터(Flutter)로 라이브러리 만들기

플러터(Flutter)를 공부하다가 문득 라이브러리 만드는 법이 궁금해졌다. 여러 개발 언어에서는 함께 쓰기 좋게 모듈화 된 공통 라이브러리 같은 모듈을 만들어 쓰는데 플러터(Flutter)에서는 어떨지 궁금해서 찾아보고 정리해 본다. 플러터(Flutter) 라이브러리의 필요성 보통 작성 중인 다트(Dart) 파일에 다른 파일의 객체나 인스턴스를 가져다 쓸 때 아래와 같이 import 구문으로 사용한다. a.dart String a = ‘Data-a’; b.dart String b … 더 읽기

Flutter | Exercise Example | PageView, Timer, StatefulWidget, SystemChrome

thumbnail

플러터(Flutter)는 구글에서 만든 크로스 플랫폼 프레임워크다. 이번에는 PageView와 Timer, StatefulWidget, SystemChrome을 이용하여 전자 액자 APP을 만들어 본다. StatelessWidget vs StatefulWidget 이전 웹앱 예제는 StatelessWidget을 사용하였다. 이번에는 StatefulWidget이 필요하니 이번 기회에 한 번 비교 분석해 보기로 하자. StatelessWidget StatelessWidget은 말 그대로 ‘상태가 없는 위젯’이다. 생명 주기도 오른쪽 그림처럼 단순하다. StatelessWidget이 빌드되면 생성자가 실행되고 이어서 필수 오버라이드 … 더 읽기

Flutter | Exercise Example | WebView, Web APP

flutter webapp thumb

플러터(Flutter)는 구글에서 만든 크로스 플랫폼 프레임워크다. 이번 글에서는 모바일이 지원되는 웹사이트를 코드 몇 줄만으로 손쉽게 웹앱으로 만들어 본다. 웹뷰(Web View) 웹뷰는 프레임워크에 내장된 브라우저를 앱의 네이티브 컴포넌트에 임베딩하는 기능이다. 네이티브 컴포넌트에 비해 속도가 느리고 애니메이션이 부자연스럽다는 단점이 있지만 이미 만들어 놓은 웹사이트를 손쉽게 활용할 수 있어 많이 활용된다. 웹사이트의 URL을 입력하면 해당 웹사이트를 화면에 보여주는 … 더 읽기

Flutter | Exercise Example | StatelessWidget, Container, Image, Splash Screen APP

플러터 스플래시 스크린 예제

APP 로딩 시 잠시 보이게 되는 스플래시 스크린 구현을 해보자. 개발툴(IDE)은 안드로이드 스튜디오를 활용한다. Flutter Project 생성 안드로이드 스튜디오에서 “New Flutter Project” 버튼을 클릭하여 프로젝트 생성 과정을 진행한다. 처음 Flutter 프로젝트를 생성하면 Flutter SDK 위치를 넣으라고 나오는데 위치를 잊었다면 “flutter doctor -v” 명령으로 알 수 있다. SplashScreen 클래스 작성 APP 로딩 시 잠시 보일 화면이기 … 더 읽기

Flutter | MacOS 개발 환경 구축

flutter logo

Flutter는 iOS와 Android APP을 한 번에 개발할 수 있는 Google에서 개발한 크로스플랫폼 프레임워크이다. 더해서 Web과 Windows, MacOS도 개발 가능하다. SDK Download & 환경 변수 SDK Download 먼저 Flutter SDK를 설치해 준다. Flutter SDK 설치는 공식 페이지(www.flutter.dev/get-started/install)에서 자신의 칩(인텔 또는 애플실리콘)에 맞는 MacOS 버전을 다운로드 받아 적당한 경로에 압축을 푼다. 환경 변수 다음은 macOS가 Flutter SDK의 … 더 읽기