분류 전체보기
-
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..
-
좋은 커밋 메시지 작성법기타 개발 관련 2025. 4. 17. 16:24
좋은 커밋 메시지는 변경 사항을 명확하게 설명하고, 나중에 기록을 빠르게 파악할 수 있도록 도와줍니다. 특히 팀 개발에서는 협업과 디버깅 효율을 높이는 중요한 수단이 됩니다. 일반적인 규칙: (한 줄로 간결하게)본문 (선택)- 왜 이런 변경이 필요한지- 어떤 부분이 영향을 받는지- 테스트 여부 등 커밋 타입 예시feat새로운 기능 추가fix버그 수정refactor코드 리팩토링 (기능 변경 없음)chore빌드, 설정, 문서 등 기타 변경docs문서 수정style코드 스타일 변경 (세미콜론 등)test테스트 추가 또는 수정 예제feat: 사용자 로그인 기능 추가- Firebase Auth 연동- 로그인 실패 시 에러 메시지 표시 fix: 로그인 버튼이 여러 번 눌리는 버그 수정- debounce 처리 ..
-
[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..
-
미디어파이프 연결 오류Android 관련 2025. 4. 3. 11:01
Activity top resumed state loss timeout for ActivityRecord{... .CameraActivity ...} 해당 오류는 CameraActivity가 실행되었지만 UI를 제대로 띄우지 못해서 시스템이 강제 종료시켰다는 뜻 java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.AppCompatActivity를 사용하는 CameraActivity에서 AppCompat 테마가 설정되지 않아서 앱이 바로 죽는다는 뜻 AndroidManifest.xml 수정 전 수정 후 android:name=".CameraActivity"..
-
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");이렇게 바꿔주세요! 코드를 모두 작성 이 되었다면 ..