flutter
-
Flutter 자동화 테스트 함수 정리flutter 2025. 4. 28. 11:24
기본 테스트 함수setUp 각 테스트 시작 전에 실행할 코드 setUp(() { 초기화 코드 });test 하나의 단위 테스트를 작성할 때 사용 test('2 + 3은 5여야 해', () { expect(2 + 3, 5); });group 여러 테스트를 논리적으로 묶을 때 사용 group('수학 계산', () { test(...); test(...); });등등 검증 함수expect(actual, matcher) 결과(actual)가 기대(matcher)와 일치하는지 확인 expect(2 + 3, equals(5));ex) // 특정 위젯 있는지 체크final heroFinder = find.byKey(const Key('work_out_level'));expect(heroFinder, findsOneW..
-
flutte 에서의 명명 규칙flutter 2025. 4. 17. 16:38
변수 명명 (camelCase) final userName = 'ha_jun';var isLoggedIn = false;int itemCount = 0; 소문자로 시작하고 단어 경계마다 대문자 (camelCase)불리언 변수는 is, has, can, should 같은 접두어 사용user_name, IsLogin, temp1 는 Dart에서는 권장되지 않음 메서드 명명 (camelCase)void fetchUserData() {}bool validateForm() {}void onLoginPressed() {} 동사로 시작 + 동작이 잘 드러나야 함onXxx, handleXxx 같은 UI 이벤트 핸들러 표현도 일반적Fetch_Data(), Submitbtn() 는 안됨 클래스 명명 (PascalCas..
-
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: Invalid argument(s): Failed to load dynamic library 'libtensorflowlite_c.so': dlopen failed: library "libtensorflowlite_c.so" not foundflutter 2025. 4. 4. 11:57
libtensorflowlite_c.so 해당 파일을 못찾아서 나는 오류 Windows 사용자를 위한 자동 다운로드 스크립트 1단계. 메모장 열고 이 코드 붙여넣기@echo offsetlocal enableextensionscd %~dp0set TF_VERSION=2.5set URL=https://github.com/am15h/tflite_flutter_plugin/releases/download/set TAG=tf_%TF_VERSION%set ANDROID_DIR=android\app\src\main\jniLibs\set ANDROID_LIB=libtensorflowlite_c.soset ARM=libtensorflowlite_c_arm.soset ARM_64=libtensorflowlite_c_ar..
-
Flutter와 Discode web-hook 설정flutter 2025. 3. 24. 14:49
오늘은 디스 코드 웹훅 설정을 알아볼게요!엄청 간단하니 따라하기 쉬울꺼에요먼저설정 아이콘을 선택 연동으로 넘어와 웹후크 만들기원하는 이름으로 설정후 선택하면웹후크 URL이 생성됩니다생성된 url을 이용해서 Dart에서 api를 연동합니다.보낼때 field 설정은 아래 링크를 참고해 주세요 "embeds": [ { "title": "📌 웹훅 테스트", "description": "이것은 테스트 메시지입니다.", "color": 5814783, // 파란색 (#58ACFA) "fields": [ { "name": "이름", "value": "홍길동", "inline": true }, ..
-
pub.dev - flutter package publish (패키지 올리기)flutter 2025. 3. 6. 14:25
제가 만들것은 위젯이 아닌 안드로이드 디바이스 웹뷰를 체크해주고 업데이트가 되도록 스토어로 이동시키는 기능입니다.※ 안드로이드의 웹뷰 버전이 낮으면 웹뷰가 실행이 되지 않아 나는 이슈에 따른 대응 방안 먼저 프로젝트를 만든후 원하는 기능을 만들어줍니다. 패이지 생성 후내가 만들 코드를 작성해줍니다. info - lib\android_web_view_check.dart:34:9 - Don't invoke 'print' in production code. Try using a logging framework. - avoid_print 이때 print 가 있으면 오류가 나니 import 'dart:developer';log("Debug message");이렇게 바꿔주세요! 코드를 모두 작성 이 되었다면 ..
-
생체 인증 추가flutter 2025. 2. 25. 12:00
설치local_auth: 2.3.0 https://pub.dev/packages/local_auth local_auth | Flutter packageFlutter plugin for Android and iOS devices to allow local authentication via fingerprint, touch ID, face ID, passcode, pin, or pattern.pub.dev. AndroidAndroidManifest.xml MainActivity.ktpackage com.[your.package]import androidx.annotation.NonNull;import io.flutter.embedding.android.FlutterFragmentActivityimpo..
-
Flutter WebView 버전 이슈 대응flutter 2025. 2. 20. 11:33
Unhandled Exception: PlatformException(error, Unknown feature SUPPRESS_ERROR_PAGE, null, java.lang.RuntimeException: Unknown feature SUPPRESS_ERROR_PAGE원인 : 안드로이드 내장 시스템 WebView 구현 버전이 낮아 발생하는 오류[ 개발자 옵션 → WebView 구현 ] 에서 버전 확인가능현재 80대 버전에서 오류 발생 조치 방법Flutter MethodChannel 을 이용해서 Kotlin 을 코드로 다비이스 WebView 버전을 가져 옵니다.참고. 아래는 저희가 처리하는 예시 입니다. import android.webkit.WebViewimport io.flutter.embeddin..
-
RiverPod 배우기flutter 2025. 2. 13. 13:55
오늘은 많은? 회사에서 사용하는 RiverPod에 대해 글을 작성하려고 해요!provider랑 bloc, GetX는 사용을 해봤지만 Riverpod는 이번이 처음이라 한번 사용한걸 정리하려고 해요 MVVM + Riverpod를 활용한 사용자 정보를 가져와 목록을 보여주는 기능을 예제로 만들어 볼게요MVVM + Riverpod의 장점✔ 비즈니스 로직과 UI 분리 → 유지보수가 쉬움✔ StateNotifierProvider를 활용하여 효율적인 상태 관리✔ AsyncValue를 활용하여 로딩, 성공, 에러 처리 간편 AsyncValue란? (Flutter Riverpod)AsyncValue는 Flutter Riverpod에서 비동기 데이터를 안전하고 쉽게 관리할 수 있도록 도와주는 타입입니다.비동기 API 요..