전체 글
[Flutter Firebase Login]플러터 익명 로그인 | Flutter Anonymous Login
안녕하세요 개발자 베베입니다. 이번 포스팅에서는 플러터 프로젝트에 파이어베이스 익명 로그인을 추가하는 방법에 대해서 알아보도록 하겠습니다. 선행 조건 플러터 앱에서 파이어베이스 로그인 기능을 사용하기 위해서는 먼저 파이어베이스를 연동시켜주는 작업이 필요합니다. 아래 포스팅에 파이어베이스 연동 방법에 대해 적어놨으니 참고하세요~ [Flutter Firebase]플러터 파이어베이스 연동 | 안드로이드 앱 연결 안녕하세요 개발자 베베입니다. 이번 포스트에서는 안드로이드 앱 기준으로 플러터 프로젝트를 파이어베이스 프로젝트와 연결하는 방법에 대해서 알아보도록 하겠습니다. 만약 여러분들의 앱 bebesoft.tistory.com 목차 1. 파이어베이스 프로젝트 설정 2. 플러터 프로젝트 코드 작성 3. 파이어베이스..
[Flutter Firebase]플러터 파이어베이스 연동 | 안드로이드 앱 연결
사전 지식 및 목표 내 플러터 안드로이드 앱을 파이어베이스와 연동한다. 여기서 연동이라는 것은 파이어베이스의 기능을 사용하기 위한 가장 첫번째의 단계를 말하며, 이 단계가 수행되지 않으면 플러터 앱에서 파이어베이스의 기능을 사용할 수 없다. 이 게시글에서는 안드로이드 앱을 위한 설정을 진행하며, IOS 앱같은 경우 설정을 따로 또 해주어야 함 과정 1. 연동할 파이어베이스 프로젝트를 생성한다. (만약 기존 파이어베이스 프로젝트가 있다면 넘어가도 됨) 2. 파이어베이스 프로젝트에 앱을 등록한다. 3. 플러터 프로젝트를 설정한다. 4. firebase_core 패키지를 설치하고 실행시켜서 확인해본다. 파이어베이스 프로젝트 생성 프로젝트는? 먼저 파이어베이스 홈페이지로 이동해서 플러터 프로젝트와 연결할 파이어..
파이어스토어 특정 필드 값 보호 및 변경 불가 설정 | firestore
안녕하세요. 개발자 베베입니다. 이번 글에서는 파이어스토어의 문서 특정 필드를 보호하는 방법에 대하여 알아보도록 하겠습니다. 목표 문서에는 변경되면 안되는 몇몇 필드가 있죠. 예를 들면 uid 값을 기록해놓은 필드라던지, 작성 시간이라던지 있겠네요. 이러한 필드의 값을 변경할 수 없도록 보안 규칙을 통해 구현해보도록 하겠습니다. 위와 같은 처리를 한다면 유저가 변해서는 안되는 필드를 수정하려고 할 때, 퍼미션 에러가 발생할 것입니다. 보안 규칙 작성 문서에는 자주 변경되는 필드도 있고 변경되면 안되는 필드가 존재할 수 있습니다. 그것은 정의하는 개발자 마음이겠죠. 만약 특정 필드를 보호하고 싶다면 파이어스토어의 보안 규칙을 설정하여 원하는 콜렉션의 문서 특정 필드를 변경 불가능하도록 할 수 있습니다. 이..
flutter :: main함수에서 비동기 함수 사용하기 | using async await in main function
이 글에서는 플러터 프로젝트 main 함수 내부에서 비동기 함수를 호출하는 방법에 대해 알아본다. main함수에 비동기 함수 호출 일반적인 비동기 함수라면 main 함수 내부에서 호출하여도 큰 문제가 발생하지 않는다. 그러나 플러터에서 사용하는 플러그인을 초기화하는 경우에 초기화 함수가 비동기 함수라면 문제가 발생한다. 예를 들어 파이어베이스 초기화를 위해 main 함수에서 Firebase.initializeApp()을 호출하면 다음과 같은 에러가 발생한다. void main() async { await Firebase.initializeApp(); // 비동기 함수 사용 시 에러 발생 runApp(MyApp()); } [VERBOSE-2:ui_dart_state.cc(148)] Unhandled Exc..
IOS 앱 개발 시에 로컬 데이터는 어떤 디렉터리에 저장해야 할까? | Flutter
디렉터리의 중요성 앱에 로컬 데이터를 활용하려면 로컬 데이터의 특성에 맞게 저장되는 디렉터리를 정해주어야 한다. 안드로이드 앱같은 경우 이 점을 지키지 않아도 앱 심사가 거부되는 등의 문제가 발생하지 않지만, IOS 앱은 문제가 발생한다. 예를 들어 앱에서 활용하는 유저의 정보 파일을 TMP 디렉터리 ( 임시 파일 디렉터리 )에 저장하여 사용하고 있다면 데이터가 삭제될 위험도 있고 IOS 같은 경우 iCloud 백업 기능을 사용할 수 없다. 이 글에서는 IOS 앱이 사용하는 디렉터리의 구조와 목적을 알아보고, 추가적으로 path_provider 패키지를 사용해서 아주 쉽게 경로를 얻는 방법을 알아보도록 한다. IOS 앱의 구조 모든 IOS 앱은 샌드박스(SandBox)라는 자신만의 공간을 갖는다. 샌드박..
프로그래밍 언어란? | What is a programming language?
안녕하세요 개발자 베베입니다. 이 글에서는 프로그래밍 언어의 정의와 종류에 대해 알아보도록 하겠습니다. 프로그래밍 언어 프로그래밍 언어란, 프로그램을 정의하는 데에 사용되는 언어를 뜻합니다. 이 말이 바로 이해가 되시는 분들이 있는 반면에 이해가 잘 안되시는 분들도 계시겠죠. 이것을 이해하려면 먼저 프로그램의 정의부터 이해해야 합니다. 사전에 프로그램의 정의를 찾아보면 다음과 같이 써져 있습니다. 프로그램(Program) : 어떤 문제를 해결하기 위해 처리 방법과 순서를 기술한 일련의 명령어 집합체 즉, 프로그램이란 문제 해결을 위해 작성된 명령어들이라는 것입니다. 그렇다면 이 명령어는 누구에게 명령을 내리기 위해 쓰여진 것일까요? 바로 컴퓨터입니다. 우리는 어떠한 결과값을 얻기 위해 그 결과값을 도출하..
자료형 WORD, DWORD란? | what is WORD, DWORD data type
안녕하세요. 개발자 베베입니다. 이번 포스팅에서는 win32 api에서 사용되는 자료형 WORD, DWORD에 대해 알아보도록 하겠습니다. WORD? DWORD? win32 api를 다루다보면 종종 WORD나 DWORD 자료형이 보입니다.정의가 되어있는 헤더파일로 가보면 WORD는 unsigned short로, DWORD는 unsigned long으로 typedef 되어있습니다.그냥 unsigned short를 사용하면 되는데 굳이 자료 재정의를 하여 WORD로 사용하는 이유가 있을까요? 자료형 WORD의 유래WORD 자료형을 설명하기 전에 먼저, 운영체제가 개발되던 시절에 관한 내용을 짤막하게 해드리도록 하겠습니다. 운영체제는 탑재되는 컴퓨터의 성능을 최대한 활용하는 방향으로 개발되어 왔습니다. 그렇기..
flutter :: 플러터에서 json 사용하기 - 기본편 | json data in flutter
안녕하세요 개발자 베베입니다. 이번 포스팅에서는 플러터에서 json 데이터를 사용하는 방법에 대해서 알아보도록 하겠습니다. 1. 자료형에 대한 이해 2. json 스트링을 Map 자료형으로 변환 3. Map 자료형을 객체로 변환 4. 객체를 json 스트링으로 변환 자료형에 대한 이해 플러터, 정확히는 Dart 언어에서 json을 다루기 위해선 먼저, 관련된 자료형에 대한 정리가 필요하다. 첫번째로 json 파일을 파일 입출력을 통해 가져오게 되면 json 데이터는 텍스트 데이터이기 때문에 String 형으로 들어오게 된다. 이 글에서는 파일 입출력을 통해 가져온 json 데이터 스트링을 json 스트링이라고 부르도록 하겠다. 두번째로 Dart에서는 json을 다루기 위해 Map 이라는 자료형을 사용한다..
파이어베이스 호스팅 서비스에 가비아 커스텀 도메인 연결하기
안녕하세요. 개발자 베베입니다. 이번 포스팅에서는 파이어베이스 호스팅 서비스에 커스텀 도메인을 설정하는 방법에 대해서 알아보겠습니다. 도메인 구매는 여러 대행업체중에서 가비아를 선택하였습니다. 다른 대행업체도 원리는 같습니다. ‣ 커스텀 도메인 추가하기 1. 파이어베이스 호스팅 서비스 페이지를 들어가서 커스텀 도메인 추가를 누릅니다. 그리고 도메인을 입력합니다.ex) rainbow.com 도메인을 구매했으면 입력창에 rainbow.com 입력 2. 소유권 확인 단계로 넘어가서 도메인 인증을 위한 레코드를 확인합니다. 레코드는 유형/호스트/값 으로 이루어져 있습니다.유형, 호스트, 값을 복사한 후, 가비아 사이트로 돌아가 도메인 레코드에 추가하여 인증을 진행해야 합니다. 3. 가비아 사이트로 돌아가 DNS..
Flutter 앱 런처 아이콘을 변경해보자
이 글은 플러터 프로젝트에 런처 아이콘을 설정하는 방법에 대한 내용을 다루고 있습니다. 이 글을 읽으면 할 수 있는 것 플러터 프로젝트를 안드로이드 앱 혹은 IOS 앱으로 빌드했을 때, 나타나는 런처 아이콘의 그림을 변경할 수 있습니다. 런처 아이콘 설정하기 플러터로 개발한 앱은 런처 아이콘이 플러터 아이콘으로 설정되어 있습니다. 플레이 스토어에 출시를 하려면 반드시 런처 아이콘을 바꿔주어야 합니다. 기본 런처 아이콘을 쓰시면 심사에서 탈락하게 됩니다. 플러터에서 런처아이콘을 변경하는 효율적인 방법은 flutter_launcher_icons 패키지를 사용하여 런처아이콘을 변경하는 방법입니다. flutter_launcher_icons | Dart PackageA package which simplifies..