프로세스와 스레드, 레지스터, 케쉬, 메모리에 대한 명확한 개념이 잡혀 있지 않거나 혼돈이 될때가 있는데, 도서관 책장을 기웃거리다 이 책의 목차와 내용을 대강 보면서 도움이 될것 같다는 느낌이 들어 빌려보았다. 전자과를 나와서 컴퓨터 구조나 운영체제에 대하 공부했던 기억이 거의 사라졌는데, "교착상태"와 같은 몇몇 아직까지 잊혀짖 않은 단어를 봤을 때 "내가 대학교 다닐때 운영체제에 대한 수업도 들었었나보다..."하고 떠올릴 수 있었다. 컴퓨터 구조와 운영체제에 대해서 그림과 함께 쉽게 잘 설명 되어있어 나같은 초급자에게 도움이 많이 된듯하다. 기억하고 싶은 내용 CPU에서 가장 중요한 내부 구성요소 산술논리연산장치(ALU) 레지스터 제어장치 보조기억장치와 입출력장치를 '컴퓨터 주변에 붙어있는 장치'라..

구글 플레이 콘솔에서는 앱이 출시되었다는 메세지를 받았지만 Google Play Store 에서 이름으로 검색하면 검색이 안될 수 있다. Google Play Store는 2019년 부터 적용한 앱의 활성도에 따라 검색 노출을 결정하는 알고리즘때문이다. 일단 구글 플레이 콘솔에서 아래와 같이 앱이 정상 출시되었다는 메세지를 받았다면 앱 페이지 링크를 통해 다운을 받을 수 있다. Google Play 에서 해당 앱 페이지는 구글 플레이 콘솔의 [대시보드] 메뉴를 선택하면 아래와 같이 "Goole play에서 보기" 링크로 확인 할 수 있다. 그리고 링크를 확인하지 않더라도 출시가 되었다면, 플레이 스토어 앱 페이지 형식에 해당 앱의 패키지 이름을 입력함으로써 앱 페이지를 접근할 수도 있다. 패키지 명은 m..

구글 플레이 콘솔에서 앱 출시를 위해 테블릿용 스크린샷을 입력할 때는 그냥 테블릿 PC에서 탭쳐한 스크린샷을 입력하면 된다. 하지만 앱 스토어 커넥트에서 앱 출시를 위해 테블릿용 스크린샷은 정해진 규격이 있다. 필수 사이즈는 2048x2732 또는 2732x2048 픽셀의 PNG 또는 JPEG 이어야 한다 (JPG 확장자일 경우 에러남...확장자를 JPEG 로 변경해줘야함) 이 크기의 스크린샷을 저장해주는 것은 iPad Pro 2세대, 3세대 뿐이다. 다른 장비는 이보다 작은 사이즈의 스크린샷이 저장된다. 회사에서 사용하고 있는 iPad Pro 11(4세대) 로 스크린 샷을 찍으면 2388x1668 로 저장된다. 따라서 앱 스토어 커넥트에 요구하는 스크린샷을 업로드하기 위해서는 캡쳐한 스크린샷을 이용해서..
이제 Flutter 입문서 마지막 책이다. 지금까지 본 책중에서 내용이 가장 알차다. 그렇다고 물론 초보가 이 책 한권을 본다면 다른 책을 안봐도 되는 것은 아닌 것 같다. 최소한 Do It 정도는 더보는 것을 추천한다. 이 두권을 보더라도 실제 앱을 짤 때에는 궁금하거나 모르는 부분이 무수히 나올텐데 이때부턴 구글링이 최고다. 몰랐던 부분, 기억하고 싶은 내용 다트 네이티브 플랫폼은 JIT(Just In Time) 컴파일 방식과 AOT(Ahead of TIme)컴파일 방식을 이용한다. JIT 컴파일 방식은 다트 가상 머신에서 제공하는 기능으로 코드의 변경된 사항을 처음부터 다시 컴파일 할 필요 없이 즉시 화면에 반영할 수 있는 핫 리로딩 기능, 실시간으로 메트릭스를 확인할 수 있는 기능 디버깅 기능을 ..
main() 에서 아래의 코드를 추가하면 시스템 UI 인 status bar(top) 와 navigation bar( bottom) 이 숨겨진 채로 Full screen에 대해서 앱의 UI 가 표시된다. SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: []); 그런데 앱 실행중에 status bar, navigation bar 가 생성될 수 있는 제스쳐를 취하게 되면 숨겨두었던 system UI 가 나타나면서 UI 가 overflow 될 수 있다. 이를 감지해서 다시 system UI 를 숨겨 두기 위한 코드도 추가해 두었었다. system UI 를 감지하고 2초 후에 다시 원래 상태로 되돌리는 명령이다. SystemChrome.se..
버튼을 누르면 생성되는 팝업창의 위치를 버튼과 연관 되게 만들고 싶을 때, 버튼을 눌렀을 때 RenderBox 로 해당 버튼의 rending 관련 정보를 가져온뒤 offset 값을 화면애 대한 절대값으로 변환하여 이값을 기반하여 생성될 popup 창의 위치를 결정하는 파라미터에 넣어주면 된다. onPressed: (){ final RenderBox renderBox = context.findRenderObject() as RenderBox; final offset = renderBox.localToGlobal(Offset.zero); final left = // offset.dx 를 활용하여 popup 창의 왼쪽위 모서리 x좌표 값 계산하여 입력 final top = // offset.dy 를 활용하여 ..
TextFiled가 포커싱 되었을 때 생성되는 keyboard에 의해 가려진다면, TextField를 보이는(visible) 영역으로 가져오면(스크롤하면) 된다. 그러기 위해서는 우선 TextFiled가 scroll 가능한 widget에 쌓여져 있어야 한다. 보통 SingleChildScorllView를 이용해서 감싸고 child 에는 Column 을 이용해서, 표시하고자 하는 위젯들을 나열한다. 이 중에 TextForm filed 가 있을 것이다. 이제 keyboard가 생성되어었을때 스크롤을 얼마나 해야하는지 알아와야 한다. soft keyboard 는 system UI 이다. System UI에 의해 가려지는 크기를 받아오는 코드는 아래와 같다. MediaQuery.of(context).viewIn..
- Total
- Today
- Yesterday
- 에러
- Bluetooth
- 앱
- 다트
- Flutter
- TextField
- SizedBox
- firebase
- hide
- position
- DART
- 앱 프로그래밍
- 이미지
- 앱개발
- 문제 해결
- 디자인
- error
- IOS
- 인사이트
- Chrome
- plugin
- UX
- Syncfusion
- 크롬
- BLE
- TextFormField
- 플러터
- 한빛미디어
- UI
- addPostFrameCallback
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |