![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/b0r0Rs/btr35FZnS0I/uaqdBKoG4JltIAfKm98Fh1/img.png)
몇가지 문제 때문에 android studio를 다시 설치학고, flutter upgrade 하여 최신으로 유지한 상태에서 build를 했더니 아래와 같은 error 메세지가 떴다. 이 메세지를 시작으로 아래에 여러 error 가 떴는데, 우선 이것부터 잡아보자. 메세지를 읽어보니 complie 할때 필요한 ndk 버전이 23.1.7779620 인 것을 메세지를 톻해 알 수 있다. 이 ndk 버전이 내 컴퓨터에 있는지 확인해보자. 1. 안드로이드 스튜디오 메뉴에서 Tools>SDK manger 를 선택한다. 팝업창이 뜬다. SDK tools 탭을 선택하고, 오른쪽 아래 모서리쯤에 있는 show package details 를 체크한 뒤 중앙에 리스트에서 스크롤을 내리다보면 NDK(side by side)..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/c0Gdgi/btr29HD7hv8/58whsseMltN7VM5Rw0q9Y1/img.png)
웹이나 앱을 디자인할 때 색의 선택은 어떻게 하는가? 자신이 좋아하는 색? 사람들이 많이 사용하는 색? 만들려는 것과 비슷한 목적을 가진 웹이나 앱서 사용하는 색? 초보 디자이너라면 비슷한 목적을 가진 경쟁사의 아이템을 벤치마킹 하는 것이 그럴싸한 대안이 될 수 있고, 디자인 감각이 뛰어난 사람이라면 자신의 감각이 말하는 색을 사용하는 것도 좋을 것이다. 자신이 선호하는 색이 있는 경우 , 왜 그 색을 좋아하는지 이유를 설명하려고 하면 쉽지 않다. 일반적으로 색상이 우리에게 미치는 영향은 무의식 차원에서의 작용이라 의식적인 차원에서 그 이유를 찾기가 쉽지 않다고 한다. 하지만 이러한 것을 연구하는 분야가 있다. 색채 심리학이다. 색채 심리학에서는 색이 인간의 감정과 행동에 미치는 영향에 대해서 연구한다...
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/yvE2i/btr2GKVWC3F/JK75GlG8rygEtpyHpoHxG1/img.png)
디자인을 어떻게 할지 고민이다. 그냥 심플하게 하자고 생각하지만, 그 심플이란 것에도 디자인이 필요하다. 고민해야 할 요소가 여럿 있지만, 그중 색상 구성은 어떻게 해야 할지, 몇 가지나 사용해야 할지에 대한 정보를 주는 영상을 우연히 유튜브에서 보았다. 그리고 영상에서 배운점을 기억하기 쉽게 정리해서 자료로 남겨 두려 한다. 다양한 색상을 마구마구 쓰면 주의가 산만해진다. Color palette는 어떻게 구성하면 좋을까? 영상에서 설명하는 것은 60:30:10 규칙이다. 3가지 색상을 선택하여 60:30:10 비율로 사용하는 것이다. 60%은 기본색상(중립, base color)이다. 앱이 밝은 테마일 경우 밝은 색으로 선택하고, 앱이 어두운 테마일 경우 어두운 색을 기본색으로 선택한다. 30%는 주..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/oiz3h/btr0nNUUs5e/AR7U8ygRMVR6bWH22PKQTK/img.png)
안드로이드 스튜디오에서 File > Settings...(MAC 은 Preferences...) 에 들어가보면, IDE 에서 기본적으로 만들어둔 live template(code snippet 단축 키워드)이 있다. 예를 들어 안드로이드 스튜디오에서 Flutter 로 코딩을 하고 있을 때, dart File에서 'st' 까지만 입력하면 자동완성 리스트 중에 'stful', 'stanim', 'stless' 가 추천되는 것을 확인할 수 있다. 이 리스트 중에서 stful을 선택하거나, stful 전체를 입력하고 enter 해보면 아래와 같이 Stateful Widget을 정의하는데 필요한 기본적인 code structure가 완성되어 나온다. 이것이 live template 다. 그리고 우리는 자주 사용하..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/AaN8F/btrZtt2Xuyp/GLDQG1V4FlfHKz5BkKq9a1/img.png)
만들고 있는 앱에 새로운 기능이 필요하다. 사진을 찍는 기능과 동영상을 찍는 기능이다. 구글에서 검색해보니 카메라를 사용할 수 있게 해주는 플러그인은 Flutter 에서 만들어준 것 하나 밖에 없는 듯하다. https://pub.dev/packages/camera camera | Flutter Package A Flutter plugin for controlling the camera. Supports previewing the camera feed, capturing images and video, and streaming image buffers to Dart. pub.dev 고민할 대안이 없으니 바로 사용을 해보았다. 패키지에 설명된 사용방법으로는 빠르게 실험해보기에 부족해서 구글링을 해보았다. 그..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cHXTaQ/btrYTqmena4/J1CpE4yhgZrHjV6Ko7o7Nk/img.jpg)
소프트웨어 아키텍트가 어떤일을 하는지, 어떻게 하는지, 왜 하는지 궁금해서 클린 코드를 먼저 살까 하다가 이걸 먼저 사게 되었다. 프로그래머가 읽어봐야할 도서 중 하나다 보니, 이것도 다시 보고, 또 보기 위해 구입을 했다. 저자는 클린 코드를 썼던 로버트 C. 마틴. 프로그래밍 관련 도서를 보면 자주 등장하는 이름 있다. 마틴 파울러, 켄트 벡, 에릭 감마, 로버트 C. 마틴. 그래서 익숙한 이름. 책 내용 정리 아키텍처는 종착지가 아니라 여정에 더 가까우며, 고정된 산출물이 아니라 계속된 탐구 과정에 더 가까움을 이해해야 좋은 아키텍처가 만들어진다. 아키텍처는 구현과 측정을 통해 증명해야 하는 가설이다. 소프트웨어 설계도 마찬가지다. 저수준의 세부사항과 고수준의 구조는 모두 소프트웨어 전체 설계의 구..
Flutter 에서 코딩을 하다보면, 로컬에 파일이나 이미지를 저장할 때 사용할 경로를 받아오기 위해 path_provider 를 사용한다. path_provider 에서 주로 쓰는 2개의 method가 있다. getApplicationSupportDirectory getApplicationDocumnetsDirecoty 안드로이드에서 getApplicationDocumnetsDirecoty 를 통해 받아오는 경로는 /data/user/0/{app_id}/app_flutter/ 와 같은 형태이며 사용자 또는 다른 앱에서 접근이 불가능한 디렉토리다. (안드로이드 스튜디오에서 Device File Explorer로 확인 가능) 그래서 Hive 나 GetStorage 와 같은 패키지를 사용할때 이들 패키지에서..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/stFlX/btrYtxsviPf/oTVejeKt6ZykPX0VxjdRM1/img.png)
앱 개발을 하면서 iOS 장비로 iPhone 6+ 와 iPhone Xs 를 사용하고 있다. 그리고 프로그래밍은 Mac mini(M1) 을 이용하고 있다. iPhone Xs 를 사용하게 된건 최근의 일인데, 그전까지 6+ 로 테스트를 했었다. 앱을 빌드하고 6+에 설치가 되면 이후에도 언제든 (Mac min 와의 연결을 하지 않은 상태에서도) 개발 과정에서 설치한 앱이 실행되었다. 그런데 Xs 는 안드로이드 스튜디오에서 run 을 하면 빌드하고 설치된 뒤 실행할 때는 정상 동작이 되는데, 테스트가 끝나고 연결(라이트닝 케이블 연결 제거)을 해제한 뒤 앱을 실행하기 위해서 아이콘을 터치하면 실행이 되지 않는다. iPhone 6+ 는 iOS 버전 12.x 이고, Xs는 iOS 버전이 16.2 다. 찾아보니 i..
- Total
- Today
- Yesterday
- SizedBox
- TextField
- plugin
- 크롬
- 한빛미디어
- 인사이트
- IOS
- 앱 프로그래밍
- Syncfusion
- 디자인
- 에러
- addPostFrameCallback
- UI
- DART
- UX
- hide
- 앱개발
- 앱
- 문제 해결
- BLE
- 이미지
- 다트
- Flutter
- error
- Chrome
- TextFormField
- firebase
- 플러터
- position
- Bluetooth
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |