자유를 위해

개발 26

Flutter(플러터) - Drift(Moor)클라이언트 DB를 ORM으로 사용하기 (sqlite)

서버에 저정하는 것 말고 휴대폰 내부 저장공간에 사용 할 수 있는 DB는 주로 sqlliste 를 사용한다. 이를 flutter에 ORM형식으로 사용할 수 있게 해주는 Drift(Moor)패키지에 대해서 정리하고자 한다. -> ORM 방식 말고도 기존의 SQL 쿼리와, Dart Table을 이용한 방법도 있지만 지금은 ORM을 이용한 DB사용만 정리하도록한다. 기존에 사용하던 패키지는 Moor인데 Moor라는 단어가 남에게 경멸하는 용어로 사용되기도 하고 Dart 와 Flutter에 사용되는 패키지라고 반영이 되는거 같지않다고 해서 rename을 결정하게되었다고 한다. 1. 기존에 사용한 moor사용법을 정리하고 2. 이후에 moor 에서 drift로 마이그레이션 하는 방법을 정리 하도록 하겠다. 유튜브..

개발/Flutter 2022.02.17

정규식 Invalid regular expression 에러 - safari/iOS

증상 React로 된 웹 페이지에서 크롬, 안드로이드에서는 문제 없이 보여지지만 safari와 아이폰에서 확인하였을때 뜨지않는 오류가 발생하였다. SyntaxError: Invalid regular expression: invalid group specifier name 원인 숫자에 콤마, 포메팅하는 정규표현식에 Safai와 iOS에 지원이 되지 않는 부분이 포함되어있었다. https://stackoverflow.com/questions/58460501/js-regex-lookbehind-not-working-in-firefox-and-safari JS Regex lookbehind not working in firefox and safari I have this following regex which ..

개발/React, RN 2022.02.10

Flutter(플러터) - UI를 마우스로 구축하는 곳이 있다?

플러터로 UI 개발시 마우스로 드래그 앤 드롭으로 미리 볼 수 있는 사이트가있어서 소개 하려한다. 페이지 이름은 Flutter Flow https://flutterflow.io/ FlutterFlow | Build Native Apps Visually FlutterFlow lets you build mobile apps unbelievably fast in your browser. Integrate with Firebase, use 3rd party services, and deploy your app straight to the app store. flutterflow.io 무료로 몇가지 샘플 UI가 있어서 내가 사용하고자 하는 서비스랑 비슷한 것을 찾아서 만들 수 있다. 내가 원하는대로 바꿀수 있는 ..

개발/Flutter 2022.02.07

플러터(Flutter) - 다국어 처리

앱에서 다국어 처리를 위해 Flutter 에서 제공하는 라이브러리를 사용해도되지만 나는 Getx를 사용하기 때문에 해당 라이브러리에서 제공하는 방식을 사용한다. https://github.com/jonataslaw/getx/blob/master/README.ko-kr.md#%EA%B5%AD%EC%A0%9C%ED%99%94 GitHub - jonataslaw/getx: Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies eas Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject de..

개발/Flutter 2022.01.28

HTTP/1.1 과 HTTP/2.0 와 HTTP/3

gRPC를 이용한 앱을 구현하던 도중에 좀 되긴하였지만 HTTP/3 가 있고, 구글에서는 이미 사용중이라고 해서 비교 글을 적으려고한다. 나중에 이직에도 도움이 되길.. 1. HTTP 1.1 - 표준 프로토콜 현재 가장 많이 사용되고 있는 표준 프로토콜이다. 특징으로는 http 헤더 사용 - 여러정보 포함 TCP 커넥션 사용 3-way-handshaking을 통한 신뢰성 확보 커넥션 재사용 파이프라이닝(piplining) 표준이긴 하지만 단점들이 있다. Head of Line Blocking 파이프라이닝을 이용한 데이터 전송 속도 향상을 이루었지만 '순차적'으로 받는 다는 한계에서 벗어나지 못해 선 요청에 대한 응답시간이 지연되면 이후의 요청들의 시간은 자연스럽게 늦춰진다. RTT(Rount Trip T..

개발/공통 2022.01.24

플러터(Flutter) - 지문인식 테스트

플러터 앱에서 현재 핸드폰에 내장되어있는 지문/ faceId를 사용하기 위해 찾아보던 중 local_auth 패키지가 지원해준다는 것을 알고 테스트 해보았다. 우선 local_auth 패키지 주소 는 아래 링크에서 확인할 수 있다. local_auth | Flutter Package Flutter plugin for Android and iOS devices to allow local authentication via fingerprint, touch ID, face ID, passcode, pin, or pattern. pub.dev Flutter에서 사용하기 pubspec.yaml 에 아래와 같이 local_auth 를 추가 (작성일 최신 버전 v1.1.10) 중요한것! 위 링크에서 example을 ..

개발/Flutter 2022.01.14

핸드폰 개발자모드 변경(note20)

Flutter 개발 테스트를 위해 우선 내 핸드폰 설정부터 바꾸자 내 개인핸드폰인 Note20을 기준. 1. 테스트 핸드폰 개발자모드 만들기 설정 - 휴대전화정보 - 소프트웨어정보에 들어간다. 빌드번호로 되어 있는 부분을 몇번 터치 하다보면 개발자 모드가 활성화 되어서 개발자 옵션이 생긴다. 여기서 USB 디버깅 가능모드로 바꾸면 핸드폰 준비 완료

개발/공통 2022.01.13

플러터(Flutter) 상태관리 GetX

Flutter앱 (또는 웹) 에서 state를 관리하는 방법은 몇가지가 있지만 내가 현재 하고 있는 프로젝트에서는 GetX를 사용하여 상태관리를 하기때문에 GetX에 관해서 다뤄 보려한다. flutter에서 기본으로 사용하는 Provider에 대해서도 알고있어야 사용하는데에 좀더 편리할 것 같다. 모든 설명은 아래 링크에 있다. GitHub - jonataslaw/getx: Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies eas Open screens/snackbars/dialogs/bottomSheets without context, manage states and injec..

개발/Flutter 2022.01.10

플러터(Flutter) 시작하기 - MacOS(Intel)

회사에서 플러터를 이용한 앱 개발이 필요해서 기본 설치 및 세팅을 다뤄보려한다. Flutter 설치 flutter 시작하기니 flutter 부터 설치해보자. 아래 링크에서 os별 flutter를 설치 하면된다.(쉽네) Install Install Flutter and get started. Downloads available for Windows, macOS, Linux, and Chrome OS operating systems. docs.flutter.dev ※ path 설정은 필수! 아래와 같이 입력하여 설치확인을 할 수있다. (작성일-2022.01.07 기준 v2.8.1) $flutter --version 추가로 설치해야 하는 부분은 flutter 설치, path 지정 후 command(iterm..

개발/Flutter 2022.01.07