모바일어플개발(117)
-
[015] 플러터 (Flutter) Tip - Mac에서 JAVA_HOME is set to an invalid directory 해결
안녕하세요~ totally 개발자입니다. 초기 세팅시 Mac(애플 실리콘 기준)에서 플러터로 안드로이드 에뮬레이터 등을 구동하려고 할 때, 아래와 같은 오류가 날 때, 해결 방법입니다. 저는 openjdk17를 brew를 이용해 설치하였습니다. 먼저 flutter doctor -v 명령어로 터미널에 입력하시면 대체적으로 아래와 같은 오류가 나올 것입니다.Cannot execute /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java to determine the version버전을 확인할 수 없다는 내용인데 이 경우 해결을 해보려고 ~/.zshrc 환경설정 JAVA_HOME, PATH 설정 등 계속 source ~/.zshrc 명령어로..
2024.12.06 -
[074] 플러터 (Flutter) 배우기 - Debounce 이용하여 함수 중복 호출 방지하기(마지막으로 호출한 것만 실행)
안녕하세요 totally 개발자입니다. 이 포스팅에서는 debounce 개념을 사용하여 함수의 중복 호출을 막아보도록 하겠습니다. 저번에 다루었던 throttle과 달리 debounce는 함수가 여러 번 호출되었을 때 맨 마지막에 호출한 것만 실행합니다. 그래서 예를 들어 텍스트를 입력할 때 텍스트 변화를 감지하는 onChange 혹은 숫자를 늘리는 행위 즉 장바구니 등의 경우에 사용할 수 있는 방법입니다. 먼저 간단한 작동 구조를 먼저 살펴보면 아래와 같습니다.1. Debounce 변수 선언 (예를 들어, 1초 동안 동일한 값을 마지막에 호출한 것만 체크하겠다는 변수)2. Debounce를 적용할 함수 선언 (예를 들어, 이메일이 올바른지, 중복되는지를 체크하겠다는 함수)3. 위 2번에서 선언한 함수를..
2024.10.10 -
[073] 플러터 (Flutter) 배우기 - Throttle 적용하여 리스트뷰(ListView) 페이지네이션 API 중복 호출 방지하기
안녕하세요 totally 개발자입니다. 이 포스팅에서는 플러터 패키지 중 debounce_throttle을 사용하여 Throttle 개념을 적용해보도록 하겠습니다. 우선 Throttle의 사용 목적에 대해서 알아야 합니다. 이 포스팅 이후에 Debounce에 대해서도 다룰 것이지만 Throttle과 Debounce는 비슷해보이나 서로 다른 목적을 가지고 있습니다. Throttle은 일정한 주기 동안 특정 함수가 여러 번 호출된 경우 함수를 한 번만 바로 실행하고 연속적으로 함수를 호출하는 것은 방지할 수 있습니다. 반대로 Denounce는 정해진 시간 동안 특정 함수가 여러 번 호출된 경우 마지막으로 실행된 함수를 호출합니다. Throttle특정 시간 동안 여러 번의 함수 호출이 있을 경우 함수를 한 번..
2024.05.26 -
[003] 플러터 (Flutter) & 아고라 (Agora) 연동 - Flutter 영상 통화(Voice Call) UI 및 기능 구현
안녕하세요~ totally 개발자입니다. 지난 포스팅에서는 Voice Call(음성통화)에 대해서 살펴보았고 이어서 Video Call(영상통화)을 구현해보도록 하겠습니다. 지난 포스팅에서 소개한 Voice Call을 구현하지 않으신 경우에 권한 등 여러 세팅이 필요하기 때문에 지난 포스팅을 보시고 오셔야 합니다. https://totally-developer.tistory.com/197 [002] 플러터 (Flutter) & 아고라 (Agora) 연동 - Flutter 음성 통화(Voice Call) UI 및 기능 구현 안녕하세요~ totally 개발자입니다. 지난 포스팅에서는 아고라(Agora) 기본 세팅을 마무리하였고 이번 포스팅에서는 Agora를 이용해서 플러터에서 음성 통화를 구현해보도록 하겠습..
2024.04.03 -
[002] 플러터 (Flutter) & 아고라 (Agora) 연동 - Flutter 음성 통화(Voice Call) UI 및 기능 구현
안녕하세요~ totally 개발자입니다. 지난 포스팅에서는 아고라(Agora) 기본 세팅을 마무리하였고 이번 포스팅에서는 Agora를 이용해서 플러터에서 음성 통화를 구현해보도록 하겠습니다. 안드로이드 및 아이폰 실기기로 직접 작업해서 테스트하였습니다. 코드는 agora의 공식 문서를 따라 작성하였습니다. https://docs.agora.io/en/voice-calling/get-started/get-started-sdk?platform=flutter https://docs.agora.io/en/voice-calling/get-started/get-started-sdk?platform=flutter docs.agora.io Step 1: 플러터 프로젝트를 새로 만들어줍니다. 저는 agora_projec..
2024.04.02 -
[001] 플러터 (Flutter) & 아고라 (Agora) 연동 - Agora 기본 세팅
안녕하세요~ totally 개발자입니다. 아고라(Agora)는 채팅, 음성통화, 영상통화 등 여러 가지를 제공하며 플러터에 연동하여 비교적 간단하게 채팅, 음성통화, 영상통화 기능을 구현할 수 있도록 도와줍니다. 테스트 정도라면 무료로 사용 가능하며 실제 라이브 서비스로 구동하는 경우 비용이 어느 정도 발생합니다. Step 1: https://www.agora.io/ Agora.io Real-Time Voice and Video Engagement The Real-Time Engagement Platform for meaningful human connections.People engage longer when they see, hear, and interact with each other. With A..
2024.04.02