일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Codemagic
- FocusNode
- GetX
- Android
- copy on write
- reactivex
- flutter web
- 갤럭시폴드
- SHIMMER
- Swift
- DevTools
- FLUTTER
- MVVM
- Codepush
- TextInputFormatter
- appstore
- BloC
- PG결제
- error
- struct
- delegate
- 무선빌드
- 성능 개선
- IOS
- shorebird
- fastlane
- Equatable
- Xcode
- reject
- abstact
- Today
- Total
목록분류 전체보기 (34)
뚝딱뚝딱 모바일
[Flutter] 아키텍처에 대한 고민 (1) - 처음 해보는 Flutter 안녕하세요! 이번에 적으려고 하는 내용은 제가 Flutter 개발을 시작하면서, 어떤 아키텍처들을 구성하고, 고민했는지에 대한 내용을 적어보려고 합니다. 한 3편 정도의 글이 나오지 않을까 생각 nkstar-ios.tistory.com 위 글에서 이어집니다. 음... 어... 아...? 뭔가 이상하다 신규로 만드는 앱에서도 이전 글에서 말한 아키텍처를 적용하여, 코드를 짜기 시작하였습니다. Flutter가 익숙해지고, 코드도 손에 익을 무렵, 점차 코드를 작성하면서 불편함이 생기기 시작했습니다. ViewModel이 필요 없는 View에 관해서 생각을 못했다. bindInput(), bindOutput() 함수들이 비대해지기 시..
안녕하세요! 이번에 적으려고 하는 내용은 제가 Flutter 개발을 시작하면서, 어떤 아키텍처들을 구성하고, 고민했는지에 대한 내용을 적어보려고 합니다. 한 3편 정도의 글이 나오지 않을까 생각하고 있습니다. 여유되시는 분들은 천천히 읽어주시고, 의견 나눠주시면 감사하겠습니다. Flutter? 해보겠습니다. 전 처음부터 Flutter를 공부하고, 이를 목표로 삼았던 사람이 아니었습니다. 학생 때는 Android 개발을, 취업 후에는 iOS 개발을 2년 정도 하다 이직을 하게 되었는데, 이직한 회사에서 전 여러 플랫폼을 커버하여야 했고, 이를 위해 Flutter를 시작하게 되었습니다. 다행히 관심이 좀 있었고, SwiftUI로 선언형 UI에 대해 미리 접했었기 때문에, Flutter와의 첫 만남은 어렵지 ..
안녕하세요! 오늘은 화면 내의 새로운 웹창을 띄울 때, 앱과 웹의 구분을 해보도록 하겠습니다. 그냥 WebView로 만들고, Web으로 실행시키면 되지 않나요?라고 생각하실 수 있습니다. 하지만 Flutter WebView 관련 패키지들은 Web에 대해 지원해주지 않습니다. (생각해 보면 좀 모순 같기도...) 그렇기에, 앱에서는 WebView, 웹에서는 iframe이 뜨도록 분기 처리를 해보도록 하겠습니다. 먼저, 파일 두 개를 만들어주겠습니다. 하나는 WebView, 하나는 iframe을 담당할 파일입니다. 그리고 각 두개의 파일에 하나의 함수를 만들건대, 이 두 개의 함수들의 이름과, 인자 모두 같은 함수여야 합니다. 함수 오버로딩도 아니고 완전 같은 함수를 만들라고요? 네. 이렇게 만드는 이유는 ..
안녕하세요! 이번엔 Flutter에서 플랫폼 구분을 해보려고 합니다. 매우 간단한 내용이니 가볍게 읽으실 수 있을 겁니다! Web if (kIsWeb) { // 웹일 때 행할 무언가 } else { // 웹을 제외한 무언가 } flutter/foundation.dart 패키지에 있는 kIsWeb이라는 bool 값으로 구분이 가능합니다. Android, iOS, MacOS, Windows, Linux, Fuchsia dart:io 패키지에 존재하는 Platform 클래스의 static 변수로 있습니다. 각 OS마다 구분하시고 알맞은 코드를 추가하시면 됩니다. 유의사항 Flutter를 Web으로 실행할 때, Platform 클래스가 코드에 있으면 에러를 방출합니다. 만약 웹과 앱 모두 분기처리를 해야 된다면..
안녕하세요! 며칠 전, Dart 3.2가 업데이트 되어, 그 내용을 바탕으로 리뷰해 보도록 하겠습니다. https://medium.com/dartlang/dart-3-2-c8de8fe1b91f Announcing Dart 3.2 Improved language & developer experience, and an update on web apps & Wasm medium.com Non-null promotion for private final fields (사실 번역해서 적고 싶은데, 정확히 뭐라 표현할지 모르겠네요... 굳이 굳이 하자면, private final 필드에서의 Non-null 인식...?) 코드로 바로 보시면 이해가 쉬우실 겁니다. int definitelyInt(int? aNullab..
안녕하세요! Flutter로 앱을 개발하다 보면, 정말 성능이 괜찮을까? 괜스레 걱정이 든 적이 많으실 겁니다. 직접 눈으로 보고 확인할 수 있도록 Flutter로 만든 앱의 성능을 한번 측정해 보겠습니다. 앱의 성능을 체크하기 위해서 Flutter에서는 Flutter DevTools를 지원합니다! https://docs.flutter.dev/tools/devtools/overview DevTools How to use the DevTools with Flutter. docs.flutter.dev 이 DevTools로 측정을 하기 전에 앱을 profile 모드로 켜줄 겁니다. Android Studio 상단의 Run -> Profile을 클릭하여 실행시켜 줍시다. 앱이 실행되면, Android Studi..
[Flutter] Fastlane으로 배포 자동화를 해보자 (1)안녕하세요...! 오늘은 Fastlane을 알아보겠습니다. https://docs.fastlane.tools/ fastlane docs fastlane fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. 🚀 It handles all tedious tasks, liknkstar-ios.tistory.com 이어서, iOS 설정에 대해서도 알아보겠습니다.똑같이 Flutter project 내부의 iOS 폴더로 이동해서 init 해주겠습니다.fastlane init어떤 작업을 목적으로 fastlane을 사용할 것이냐..
안녕하세요...!오늘은 Fastlane을 알아보겠습니다.https://docs.fastlane.tools/ fastlane docsfastlane fastlane is the easiest way to automate beta deployments and releases for your iOS and Android apps. 🚀 It handles all tedious tasks, like generating screenshots, dealing with code signing, and releasing your application. You can start by creatidocs.fastlane.toolsFastlane은 Android, iOS의 자동적인 스토어 업로드를 쉽게 지원해 주는 툴입니다..