묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨GetX 기반 Flutter 앱 만들기
material theme
이거 material theme가져오는거 달라진거같은데 혹시 지금은 어떻게 할 수 있을까요?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
Widget build(BuildContext context) 의미
안녕하세요!StatefulWidget 라이프사이클 강의 중에 Widget build(BuildContext context)를 설명해주실 때 build함수에서Build Context와 context를 파라미터로 받을 수 있고 context를 변수로 사용할 수 있다고 하셨는데요, 이 부분에 대해 잘 이해가 가지 않아 문의드립니다.build는 함수이고 (Build Context context)는 build함수의 파라미터가 되는 것일까요?(Build Context context)의 각각 역할은 어떤 것일까요? context에 대해 변수라는 설명도 있었는데 같이 설명부탁드려요.감사합니다.
-
미해결[2025 리뉴얼]플러터플로우로 코딩 없이 한달 안에 앱 만들기
Postgre SQL 연결
안녕하세요. 강의 잘 듣고 있습니다!! ㅎㅎAndroidStudio를 살짝 맛 봤던 사람으로써 코드 없이 앱을 만들 수 있다는게 너무 편하고 좋네요.. FlutterFlow에서는 Firebase를 주로 사용하는데제가 맡은 업무에서는 Postgre 연결이 필요할 것 같아요 혹시 이 연결 방법은 고급 강의에서 들을 수 있나요?제가 postgre sql자체를 아예 몰라서...문서 찾기나 방법 찾기가 더욱 힘든 것 같아질문 남겨봅니다. 또한 자체 개발 백앤드 api를 연결 할 경우 방법이 쉬운 편인지도 여쭤보고싶어요 😃
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
MaterialStateProperty 없어지고 WidgetStateProperty 로 변경
MaterialStateProperty 없어지고 WidgetStateProperty 로 변경되었습니다
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
구글 맵스 ios 오류
Launching lib/main.dart on iPhone 15 in debug mode...Running pod install...CocoaPods' output:↳ [!] Invalid Podfile file: /Users/yurim/Desktop/flutter/chool_check_app/Flutter/Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first. # from /Users/yurim/Desktop/flutter/chool_check_app/ios/Podfile:9 # ------------------------------------------- # unless File.exist?(generated_xcode_build_settings_path) > raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" # end # ------------------------------------------- /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-core-1.15.2/lib/cocoapods-core/podfile.rb:335:in `rescue in block in from_ruby' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-core-1.15.2/lib/cocoapods-core/podfile.rb:329:in `block in from_ruby' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-core-1.15.2/lib/cocoapods-core/podfile.rb:50:in `instance_eval' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-core-1.15.2/lib/cocoapods-core/podfile.rb:50:in `initialize' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-core-1.15.2/lib/cocoapods-core/podfile.rb:327:in `new' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-core-1.15.2/lib/cocoapods-core/podfile.rb:327:in `from_ruby' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-core-1.15.2/lib/cocoapods-core/podfile.rb:293:in `from_file' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-1.15.2/lib/cocoapods/config.rb:206:in `podfile' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-1.15.2/lib/cocoapods/command.rb:160:in `verify_podfile_exists!' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-1.15.2/lib/cocoapods/command/install.rb:46:in `run' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/claide-1.1.0/lib/claide/command.rb:334:in `run' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-1.15.2/lib/cocoapods/command.rb:52:in `run' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/gems/cocoapods-1.15.2/bin/pod:55:in `<top (required)>' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/bin/pod:25:in `load' /opt/homebrew/Cellar/cocoapods/1.15.2/libexec/bin/pod:25:in `<main>'Error running pod installError launching application on iPhone 15.이렇게 에러가나서 지도가 나오지 않습니다 ㅜㅜ 도와주세요
-
해결됨[Python 초보] Flutter로 만드는 ChatGPT 음성번역앱
음성 인식 후 마이크 색깔이 변하지 않아요.
안녕하세요.강의를 보면서 쭈욱 진행하고 있는데, 에뮬레이터에서 음성인식을 테스트하면 음성인식이 완료되었음에도 마이크 색깔이 검정색으로 변하지 않습니다. 강의 내용대로 코드를 쳤는데 확인 부탁드립니다. (혹시 소스코드가 깃헙에는 없나요?..)import 'package:dash_chat_2/dash_chat_2.dart'; import 'package:flutter/material.dart'; import 'package:http/http.dart' as http; import 'dart:convert'; import 'package:speech_to_text/speech_to_text.dart'; import 'package:speech_to_text/speech_recognition_result.dart'; class BasicScreen extends StatefulWidget { @override _BasicState createState() => _BasicState(); } class _BasicState extends State<BasicScreen> { bool isListening = false; SpeechToText _speechToText = SpeechToText(); bool _speechEnabled = false; String _lastWords = ''; @override void initState() { super.initState(); _initSpeech(); } ChatUser user1 = ChatUser( id: '1', firstName: 'me', lastName: 'me', ); ChatUser user2 = ChatUser( id: '2', firstName: 'chatGPT', lastName: 'openAI', profileImage: "assets/img/gpt_icon.png" ); late List<ChatMessage> messages = <ChatMessage>[ ChatMessage( text: '반갑습니다. 어서오세요. 무엇을 도와드릴까요?', user: user2, createdAt: DateTime.now(), ), ]; @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: const Text('Basic example'), ), body: DashChat( currentUser: user1, onSend: (ChatMessage m) { setState(() { messages.insert(0, m); }); Future<String> data = sendMessageToServer(m.text); data.then((value){ setState(() { messages.insert(0, ChatMessage( text: value, user: user2, createdAt: DateTime.now(), )); }); }); }, messages: messages, inputOptions: InputOptions( leading: [ IconButton( icon: Icon(Icons.mic, color: isListening? Colors.red: Colors.black), onPressed: (){ setState(() { isListening = !isListening; if (isListening == true){ print('음성인식 시작'); _startListening(); }else{ print('음성인식 끝'); _stopListening(); } }); }, ) ] ) , ), ); } Future<String> sendMessageToServer(String message) async{ var headers = { 'Content-Type': 'application/json', 'Authorization': 'Bearer sk-proj-b2yCBjZ7jwkR7nmWl4NLT3BlbkFJmm0iaZMBGPJHHy3b3I4J', }; var request = http.Request('POST', Uri.parse('https://api.openai.com/v1/chat/completions')); request.body = json.encode({ "model": "gpt-3.5-turbo", "messages": [ { "role": "user", "content": message, } ] }); request.headers.addAll(headers); http.StreamedResponse response = await request.send(); if (response.statusCode == 200) { String responseString = await response.stream.bytesToString(); Map<String, dynamic> jsonResponse = json.decode(responseString); String result = jsonResponse['choices'] != null? jsonResponse['choices'][0]['message']['content']: "No result found"; print(responseString); return result; } else { print(response.reasonPhrase); return "ERROR"; } } /// This has to happen only once per app void _initSpeech() async { print("음성인식 기능을 시작합니다."); _speechEnabled = await _speechToText.initialize(); // setState(() {}); } /// Each time to start a speech recognition session void _startListening() async { print("음성인식을 시작합니다."); await _speechToText.listen(onResult: _onSpeechResult); // setState(() {}); } /// Manually stop the active speech recognition session /// Note that there are also timeouts that each platform enforces /// and the SpeechToText plugin supports setting timeouts on the /// listen method. void _stopListening() async { print("음성인식을 종료합니다."); await _speechToText.stop(); // setState(() {}); } /// This is the callback that the SpeechToText plugin calls when /// the platform returns recognized words. void _onSpeechResult(SpeechRecognitionResult result) { _lastWords = ""; if(result.finalResult){ _lastWords = result.recognizedWords; print("최종 인식된 문장: $_lastWords"); setState(() { messages.insert(0, ChatMessage( text: _lastWords, user: user1, createdAt: DateTime.now(), )); }); Future<String> data = sendMessageToServer(_lastWords); data.then((value){ setState(() { messages.insert(0, ChatMessage( text: value, user: user2, createdAt: DateTime.now(), )); }); }); } } }
-
해결됨[플러터플로우] 실전! 앱 출시를 위한 끝장 노하우!
Firebase로 관계형 데이터베이스 구현 가능성
안녕하세요 개발 초보입니다.파이어베이스로 관계형 데이터베이스를 구축하기는 힘들거라는 조언을 얻었는데구체적으로 뭐가 힘든건지는 잘 모르겠어서 질문드립니다 일단 플러터플로우에서 기본적으로 파이어베이스를 제공하고있고 자료도 많아 이쪽으로 하고싶은데 조언대로라면 수파베이스를 써야할 것 같아서요. 예를 들어 a유저와 b유저 사이에 각자가 생각하는 친밀도값이 있고 b유저와 c유저도 마찬가지로 친밀도값이 있습니다. 결국 a유저와 b유저는 친하고, b유저는 c유저와 친하다는 것을 알아내어 a와 c를 연결하기 위한 것이 목적인데 이러한 알고리즘을 파이어베이스로 구축가능할까요?
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
retrofit multipartfile 리스트 보내기
@POST('/boards') @Headers({'Authorization': 'true'}) @MultiPart() Future<HttpResponse> createBoard({ @Part() required BoardRequestModel boardCreateModel, @Part() List<MultipartFile>? files, });이렇게 multipartfile 리스트로 이미지를 보내려고 하는데생성된 g.dart 파일을 보면 이렇게 에러가 발생합니다현재 getx 에서 Multipartfile을 hide 해주고 사용했습니다혹시 retrofit을 이용할때 multipartfile 리스트를 보내는 방법이 따로 있을까요?
-
미해결[플러터 상태관리] Bloc 마스터 코스 기초부터 응용까지!
잘 모르겠어요
따라쳐볼때 전체적인 구조나 흐름을 잘 모르겠어서 따라치지않고 그냥 봐도 잘 모르겠네요.. 여러번 보면 괜찮을까요?? bloc사용할거라 후속작 책 리뷰앱도 결제했는데 getX부터 잘 모르겠어요.. getX 유튜브강의 따로 내놓으신거있던데 그걸봐야할까요?시간낭비일까요.. 큰일이네요..(setState까진 이해했습니다..)
-
해결됨[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
한국어로 언어 변경 후 날짜 옆에 '일' 표시가 생겼어요
이런 식으로 날짜 옆에 일 표시는 제거할 수 없나요?
-
해결됨Flutter로 SNS 앱 만들기
섹션4 FirebaseAuth인증상태에 따라 authStatus상태변경에서 예외로직이 안먹고 있어요
섹션4 FirebaseAuth인증상태에 따라 authStatus상태변경에서 예외로직이 안먹고 있어요.// '인증되지 않은 이메일' 이런식으로 예외를 발생시키기 위해서 throw를 사용함 throw CustomException( code: 'Exception', message: '인증되지 않은 메일',저는 이런창이 뜨네요... 뭐가 잘못 된건가요..? 멜보냅니다
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
drift로 글 가져올때요
데이터를 get으로 호출해서 가져오는데... 늘 이렇게 여러줄로 가져오는데.. 원래 내부디비는 이렇게 나오는건가요?찾아도 잘 안나오네요..데이터를 저장하고 새로고침하면, 이런식으로 같은 데이터가 여러줄로 나오더라구요
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
환경설정 작업 오류
안녕하세요. 오늘 처음 안드로이드 스튜디오 다운받았고, 처음으로 플러터 sdk 다운받았습니다. 그런데 에뮬레이터를 실행하고 test_proj를 실행하는 과정에서 아래와 같은 오류가 발생합니다. ㅠ.. 어떻게 해결해야 하나요?4번째 Warning 부분이 빨간색으로 나오네요. Launching lib\main.dart on sdk gphone64 x86 64 in debug mode...Running Gradle task 'assembleDebug'...Warning: This version only understands SDK XML versions up to 3 but an SDK XML file of version 4 was encountered. This can happen if you use versions of Android Studio and the command-line tools that were released at different times.Checking the license for package Android SDK Tools in C:\Users\suhol\AppData\Local\Android\sdk\licensesLicense for package Android SDK Tools accepted.Preparing "Install Android SDK Tools (revision: 26.1.1)"."Install Android SDK Tools (revision: 26.1.1)" ready.Installing Android SDK Tools in C:\Users\suhol\AppData\Local\Android\sdk\tools"Install Android SDK Tools (revision: 26.1.1)" complete."Install Android SDK Tools (revision: 26.1.1)" finished.Checking the license for package Android SDK Build-Tools 30.0.3 in C:\Users\suhol\AppData\Local\Android\sdk\licensesLicense for package Android SDK Build-Tools 30.0.3 accepted.Preparing "Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)"."Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)" ready.Installing Android SDK Build-Tools 30.0.3 in C:\Users\suhol\AppData\Local\Android\sdk\build-tools\30.0.3"Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)" complete."Install Android SDK Build-Tools 30.0.3 (revision: 30.0.3)" finished.√ Built build\app\outputs\flutter-apk\app-debug.apkInstalling build\app\outputs\flutter-apk\app-debug.apk...Debug service listening on ws://127.0.0.1:50981/764n9IlfL4k=/wsSyncing files to device sdk gphone64 x86 64...Lost connection to device.adb.exe: device offline
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안드로이드 에뮬레이터 동영상 재생 안 됨
동영상 플레이어를 제작하는 중입니다.영상을 에뮬레이터에 넣고 영상 선택까지도 됩니다.그런데 초록 화면조차 안 나오고 재생이 안 됩니다. 플러터앱이 아니라 기본 앱을 통해 재생하려고 해도 재생이 안 되네요. 영상 파일 자체에는 이상이 없습니다. 윈도우 플레이어로 재생하면 잘 나오거든요. 에뮬레이터와 앱을 몇 번 재실행해도 안 되네요.제 컴퓨터가 자원이 충분하지 않은가 싶어서 참고 수강하다가 아무래도 그런 문제는 아닐 것 같아서 문의드립니다.
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
Rating의 get 요청이 가질 않습니다.
안녕하세요. 강의를 들으며 ratingState를 print 해보니 Instance of '_RestaurantRatingRepository' 결과가 나왔습니다. 이제보니 dio 요청 자체도 가지 않은 상태입니다. pagination_provider.dart를 적용한 후 Restaurant와 RestaurantDetail은 잘 실행되는데, Rating만 dio 요청 자체가 가지 않습니다.저 아래의 Instance of '_RestaurantRatingRepository'가 ratingState입니다.디버깅을 통해서 dio를 제대로 받아온 것은 확인했는데, pagination 내부의 print는 restaurant만 먹히고, restaurantdetail과 rating은 print되지 않아 어떻게 해결해야할지, 어떻게 해결 방법을 찾아야 할지 갈피도 못 잡겠습니다.프로젝트의 repository를 첨부합니다. https://github.com/jungeyo3/codefactory-flutter-lv2-study 버전은 아래와 같습니다. 감사합니다.
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
함수 질문드립니다.
함수 질문 드립니다.보통 함수는 파라미터를 전달해서 그 파라미터값으로 중괄호 부분의 함수를 실행시키는걸로 알고있는데요.작업을 하다보면, 위와 같이 반환하는 함수의 타입과 이름이 정해져서 나오는경우가 있더라구요.위에 이미지 안에 함수보면 빌드와 에이싱크타입의 context, snapshot을 받아서 함수를 실행하는걸로 나와있는거 같습니다.제가 해당 값에 아무것도 전달하지도 않았는데 어떻게 중괄호 안에서 snapshot. 즉, . 을 이용해서 접근해서 이용할수있는건가요?함수에 파라미터를 받아서 중괄호 부분을 실행시키는거랑 많이 달라서요..질문1snapshot에는 어떤한 데이터도 제가 제공안했는데 어떻게 접근 가능한지?질문2파라미터에 ( int a , String b ) 이렇게 선언하는것과 (BuildContext context , AsyncSnapshot<T> snapshot)파라미터 앞에 타입 선언하고 변수 선언하고 똑같은데, 위에꺼는 파라미터를 전달해서 실행하는것과 파라미터 안에 데이터에 접근해서 사용하는것과 어떻게 구분하는건가요?
-
미해결플러터와 장고로 1시간만에 퀴즈 앱/서버 만들기 [무작정 풀스택]
vscode 포매팅 하는 방법이 궁금합니다
코드 작성하시고 저장하시거나 다음으로 넘어가면 저절로 포매팅이되는데 이 부분은 어떻게 설정해야하나요?
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
35:50분의 name: x[‘name’]!, 질문입니다.
35:50분의 질문입니다.Name: x[‘name’]!,Group: x[‘group’]!, 이 부분은 위에 있는 map의 key에들어 있는 값이라고 하면서 어떻게 나중에 value값이 되는 건지 잘 이해가 안되는데요~ ㅠㅠ
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
rxdart
RXdart도 배우는게 낫나요? 요즘 트렌드 어떨까용
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
:isar_flutter_libs:parseDebugLocalResources'.
안녕하세요 이자르 오류가나서 문의드립니다 ㅠㅠ What went wrong: Execution failed for task ':isar_flutter_libs:parseDebugLocalResources'. > Could not resolve all files for configuration ':isar_flutter_libs:androidApis'. > Failed to transform android.jar to match attributes {artifactType=android-platform-attr, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}. > Execution failed for PlatformAttrTransform: C:\Users\SH\AppData\Local\Android\sdk\platforms\android-30\android.jar. > C:\Users\SH\AppData\Local\Android\sdk\platforms\android-30\android.jar Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. Get more help at https://help.gradle.org BUILD FAILED in 15sError: Gradle task assembleDebug failed with exit code 1