Android Studio Devices 실행 시간
미해결
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
컴퓨터 사양마다 로딩이나 리붓되는 시간이 다르겠지만, 최신 버젼으로 Device를 실행하면 엄청 오랜 시간이 걸린 후에야 작성한 코드가 실행되는데, 이건 어쩔 수 없이 당연한 컴퓨터 사양 문제겠죠?....ㅠㅠ
- flutter
- 클론코딩
173만명의 커뮤니티!! 함께 토론해봐요.
미해결
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
컴퓨터 사양마다 로딩이나 리붓되는 시간이 다르겠지만, 최신 버젼으로 Device를 실행하면 엄청 오랜 시간이 걸린 후에야 작성한 코드가 실행되는데, 이건 어쩔 수 없이 당연한 컴퓨터 사양 문제겠죠?....ㅠㅠ
미해결
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
color.dart에 import 'package:flutter/material.dart'; const Color PRIMARY_COLOR = Color(0xFF2D2D33); const Color RED_COLOR = Color(0xFFEA4955); const Color BLUE_COLOR = Color(0xFF549FBF); 한 뒤에 return Scaffold( backgroundColor: PRIMARY_COLOR, body: SafeArea( 라고 backgroundColor: PRIMARY_COLOR, 넣자마자 오류가 납니다.. 자동완성도 당연히 안되고요. 아무리 봐도 똑같이 했는데 이유를 모르겠어서요ㅜ Performing hot restart... Syncing files to device SM G991N... lib/screen/home_screen.dart:14:24: Error: The getter 'PRIMARY_COLOR' isn't defined for the class '_HomeScreenState'. - '_HomeScreenState' is from 'package:random_number/screen/home_screen.dart' ('lib/screen/home_screen.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'PRIMARY_COLOR'. backgroundColor: PRIMARY_COLOR, ^^^^^^^^^^^^^ Restarted application in 561ms.
미해결
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
webview 강의와 관련하여 , 버젼 ^3.0.2로 진행한 후 4.x.x으로 따라가도 무관하다는 글을 보았습니다. 하지만 그대로 3버젼으로 진행하려고 하니 더 이상 지원하지 않는 api라며 안내가 뜨고 있습니다. 그러곤 4버젼에서 다시금 하려 해도 3버젼과 명령이가 달라져 앞 강의 내용을 들어도 이해가 잘 안가는 부분들이 있습니다. 4버젼만 따로 강의 제작은 진행되지 않는걸까요?
미해결
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 일단은 해결 했습니다. findAllString 이용하는데 Order를 얘가 모르는 거 같아서.. String jpql = "select o From jpabook.jpashop.domain.Order o join o.member m"; 이렇게 패키지경로까지 다 명시해줬더니 인지를 하더라구요.. 안 그러면 org.hibernate.query.sqm.UnknownEntityException: Could not resolve root entity 'Order' at org.hibernate.query.hql.internal.SemanticQueryBuilder.visitRootEntity(SemanticQueryBuilder.java:1960) ~[hibernate-core-6.2.13.Final.jar:6.2.13.Final] at org.hibernate.query.hql.internal.SemanticQueryBuilder.visitRootEntity(SemanticQueryBuilder.java:253) ~[hibernate-core-6.2.13.Final.jar:6.2.13.Final] ............... 얘가 이렇게 Order 인지 못한다고 오류가 뜹니다.. 원래 엔티티는 그냥 @Entity 등록 하면 알아서 인지 되는걸로 알고 있었는데.. 왜 이런 걸까요? package jpabook.jpashop.domain; import jakarta.persistence.*; import lombok.AccessLevel; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @Entity(name = "orders") @Getter @NoArgsConstructor(access = AccessLevel.PUBLIC) public class Order { @Id @GeneratedValue @Column(name = "order_id") private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "member_id") private Member member; @OneToMany(mappedBy = "order", cascade = CascadeType.ALL) private List<OrderItem> orderItems = new ArrayList<>(); @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name = "delivery_id") private Delivery delivery; private LocalDateTime orderDate; @Enumerated(EnumType.STRING) private OrderStatus status; public void changeMember(Member member){ this.member = member; member.getOrders().add(this); } public void addOrderItem(OrderItem orderItem){ orderItems.add(orderItem); orderItem.setOrder(this); } private void setOrderDate(LocalDateTime orderDate) { this.orderDate = orderDate; } public void changeDelivery(Delivery delivery){ this.delivery = delivery; delivery.setOrder(this); } private void setStatus(OrderStatus status) { this.status = status; } public static Order createOrder(Member member, Delivery delivery, OrderItem... orderItems){ Order order = new Order(); order.changeMember(member); order.changeDelivery(delivery); for (OrderItem orderItem : orderItems) { order.addOrderItem(orderItem); } order.setStatus(OrderStatus.ORDER); order.setOrderDate(LocalDateTime.now()); return order; } public void cancel(){ if(delivery.getStatus() == DeliveryStatus.COMP){ throw new IllegalStateException("이미 배송완료된 상품은 취소가 불가능합니다."); } this.setStatus(OrderStatus.CANCEL); for (OrderItem orderItem : orderItems) { // orderItem.getItem().removeStock(orderItem.getCount()); orderItem.cancel(); } } public int getTotalPrice(){ int totalPrice = 0; for( OrderItem orderItem : orderItems){ totalPrice += orderItem.getTotalPrice(); } return totalPrice; } }
해결됨
Flutter 앱 개발 기초
마지막으로 파이어베이스 마지막장 공부 하고 있는데요. 이번에 바뀐건지 또 연결이 안되고 있어요 . . 참고할 만한 사이트나 . 연결방법좀 귀뜸해주세요 . classpath "com.google.gms.google-services" version "4.4.0" 지워도 안되요 , 그리고 IOS 는 POD 자체가 안보입니다. // notion 감사합니다 . 저도 저장해야할 것 같습니다. 머리가 안따라주네요 . 이제 절반정도는 만들 수 있어요. * What went wrong: [ ] A problem occurred evaluating root project 'android'. [ ] > Supplied String module notation 'com.google.gms.google-services' is invalid. Example notations: 'org.gradle:gradle-core:2.2', 'org.mockito:mockito-core:1.9.5:javadoc'. [ ] * Try: [ ] > Run with --debug option to get more log output. [ ] > Run with --scan to get full insights.
미해결
import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; import 'package:http/http.dart' as http; import 'package:map/main.dart'; import 'package:html/dom.dart' as dom; import 'package:html/parser.dart' as parser; void main() async{ var uri = Uri.parse("https://maps.google.com/?cid=9824313016117606097"); http.Response response = await http.get(uri); dom.Document document = parser.parse(response.body); print(document.outerHtml); } 이런 식으로 파싱을 하는데 나오는 결과물이 null,null,[[\"VENUS_UGCS_REFERENCE\",\"CIHM0ogKEICAgID4zYaWIg||\",\"1\"],[\"UGCS_REFERENCE\",\"CIHM0ogKEICAgICo0KaMYQ||\",\"1\"]]],null,null,null,null,null,null,null,[\"0\",\"-8622431057591945519\"]],[\"AF1QipM0NUuMNxT19uXB5qiTmGjxV2G0GhA2ttjxU20Y\",null,null,null,null,null,[\" https://lh5.googleusercontent.com/p/AF1QipM0NUuMNxT19uXB5qiTmGjxV2G0GhA2ttjxU20Y\\u003dw150-h150-k-no-p\"],null,[[null,127.12812502658495,37.6524851777755],null,null,75],\"Qz5OZav0GvfK1e8P2t-VoAQ\",\"0ahUKEwjrocKs0rmCAxV3ZfUHHdpvBUQQzCcIxgEoBg\",[\"//www.google.com/local/imagery/report/?cb_client\\u003dmaps_sv 이런식으로 나오는데 어디 부분이 잘못된건지 모르겠어요
해결됨
Flutter로 SNS 앱 만들기
안녕하세요. 강의 잘 듣고 있습니다. 인증 메일 전송 / firebase storage에 프로필 이미지 저장 강의에 대해서 질문이 있습니다. firebase storage에 파일이 잘 저장되기는 했으나, 이미지 파일로 저장되지 않았습니다. 왜 이렇게 되는지 잘 모르겠습니다. 바쁘실텐데 질문 읽어주셔서 감사합니다.
해결됨
Flutter로 SNS 앱 만들기
안녕하세요. 좋은 강의 잘 듣고 있습니다. 다름이 아니라, 상태관리 등록 후, 회원 가입 테스트 부분에서 에러가 나서 질문 드립니다. package:firebase_auth_platform_interface/src/auth_provider.dart import 되어 있다고 해서 지우려고 찾아 봤는데 위의 저런 package는 import 되어 있지 않습니다. 무슨 문제인지 모르겠습니다. 바쁘실 텐데 질문 읽어주셔서 감사합니다.
해결됨
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요. 좋은 강의 감사합니다! 강의 내용 중 구현방향에 대해 궁금한 점이 있어 질문 드립니다. 랜덤 넘버를 초기화 하는 배열에서(randomNumbers) 조건에 따라 padding을 지정하는 과정의 코드가 다음과 같이 구현이 되어 있는데요. padding: EdgeInsets.only(bottom: x.key == 2 ? 0 : 16.0), 만약 x.key를 직접 참조 하는게 아닌 randomNumbers의 length를 가져와서 조건을 거는 것도 유지보수 상 좋은 코드인가요? padding: EdgeInsets.only(bottom: x.key == randomNumbers.length - 1 ? 0 : 16.0),
해결됨
React + GPT API로 AI회고록 서비스 개발 (원데이 클래스)
GPT API 호출, 프롬프트 연동 강의 0:24 계속해서 useState에 다음과 같은 오류가 뜹니다. import { useState } from "react"; 오류 사유는'useState' is declared but its value is never read. 대체 왜 해결이 안되는 것일까요..?ㅜ.ㅜ
미해결
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
지금 저의 목표는 혼자서 앱하나를 온전히 만들어 출시, 유지보수까지 하는 건데요, 추천을 받고 중급 강의까지 여러번 반복하며 코드들을 연습하고 있습니다. 그런데 보통 개발자 1명이 앱을 제작할때 순서가 어떻게 될까요? 중급강의 처럼 api, 백엔드를 먼저 설계해놓은 후 프런트를 개발 할까요? 막연하게 공부하기 전에는 프런트를 먼저 구현을 다 해놓은 후에 백엔드를 연결하는 것이 아닐까 했는데, 중급을 공부하다보니 그런것도 아닌것 같아서요, 실제 앱 개발에서는 어떤 방식과 순서로 개발하는지 궁금합니다.
해결됨
실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 검증오류가 날 시 BindingResult에 의해 들어가는 게 아니라, 저렇게 인자로 받는 건 이미 모델에 들어가 주는거죠?
미해결
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
예제를 내려받아서 진행하는데 버전 오류가 너무 많이 생기거든요 전 안드로이드스튜디오(지라프), 플러터(3.13.8) 모두 최신 버전인데요, > Could not resolve all files for configuration ':classpath'. > Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.2. Searched in the following locations: 지금도 이렇게 떠서 build gradle 파일에서 ext.kotlin_version = '1.7.2' classpath 'com.android.tools.build:gradle:8.1.3' 로 바꾸고 gradle-wrapper.properties 에서 distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-all.zip 바꿔주었는데 오류가 계속 나네요. 저렇게 바꾼 근거는 https://developer.android.com/studio/releases/gradle-plugin?hl=ko 여기 보고 했고요.. 어떻게 해결해야할지요? 그리고 앞으로 버전 문제에 시간 너무 뺏기지 않으려면 역시 fvm 으로 예제를 여는게 답일까요? 꼭 코팩 강의의 문제가 아니라 앞으로도 발생할 문제라 방향을 잡으려고 여쭈어봅니다...
미해결
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
섹션17에서 스트림설명에서 에러를 표현할때I값이 0,1,2,3,4,5 가 되었을때 에러 표현 되는것이 아닌가요? 이해를 못했서요. 설명부탁합니다
해결됨
[코드팩토리] [입문] Dart 언어 4시간만에 완전정복
toSet(), Set.of(), Set.from() 차이점이 있나요?
미해결
Flutter 초입문 왕초보편
구글맵플랫폼 사용시 결제 계정을 등록하라고 합니다. 무료로 사용하는 방법이 있는 지 문의 드립니다.
해결됨
React + GPT API로 AI회고록 서비스 개발 (원데이 클래스)
setUserInput("")을 하면 userInput 값이 ""로 바뀌고 그다움 num 선언문에 ""의 숫자변환값이 들어가는게 아닌가 궁금합니다.
미해결
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
네 핫릴로드 할스타트 활성화가 안되는걸 보면 에러는 맞는듯합니다 Launching lib\main.dart on Android SDK built for x86 in debug mode... Running Gradle task 'assembleDebug'... Warning: Mapping new ns http://schemas.android.com/repository/android/common/02 to old ns http://schemas.android.com/repository/android/common/01 Warning: Mapping new ns http://schemas.android.com/repository/android/generic/02 to old ns http://schemas.android.com/repository/android/generic/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/addon2/02 to old ns http://schemas.android.com/sdk/android/repo/addon2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/addon2/03 to old ns http://schemas.android.com/sdk/android/repo/addon2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/repository2/02 to old ns http://schemas.android.com/sdk/android/repo/repository2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/repository2/03 to old ns http://schemas.android.com/sdk/android/repo/repository2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/sys-img2/03 to old ns http://schemas.android.com/sdk/android/repo/sys-img2/01 Warning: Mapping new ns http://schemas.android.com/sdk/android/repo/sys-img2/02 to old ns http://schemas.android.com/sdk/android/repo/sys-img2/01 FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:processDebugMainManifest'. > Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not "opens java.io" to unnamed module @3dc86b6d * 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 4s Exception: Gradle task assembleDebug failed with exit code 1 위가 에러메시지이고요 유앤아이 만난지 몇일 예제와 똑같이 작성한듯 한데.. 메인다트 import 'package:flutter/material.dart'; import 'package:u_and_i/screen/home_screen.dart'; void main() { runApp( MaterialApp( home: HomeScreen(), ), ); } 홈스크린 import 'package:flutter/material.dart'; class HomeScreen extends StatelessWidget { const HomeScreen({super.key}); @override Widget build(BuildContext context) { return Scaffold( body: Center( child: Text( 'Home Screen', ), ), ); } } ㅠㅜㅜ 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
미해결
스프링 시큐리티
안녕하세요 이렇게 좋은 Spring Security에 애를 많이 먹던 도중 늦게나마 열심히 듣고 있는 사람입니다. 강의를 들으면서 Spring Security 6.0 이상 버전으로 혼자 마이그레이션 해보며 공부를 진행하는데요.. 다른 분들은 모르겠지만 저는 6.0 이상 버전에서의 다중 보안 설정에서 애를 좀 먹어서.. 혹시나 저 같으신 분들이 있으실까봐 글을 남깁니다..! 다름이 아니라 Spring Security 6.0 이상 버전에서는 먼저 오버라이드해서 함수를 구현하는 것이 아니라 컴포넌트화 시켜서 진행합니다. 또한 HttpSecurity 안의 내용을 구현하는데 변경점이 있다는 것이 가장 큰 차이점인 것 같습니다. 예를 들어 UserSecurityConfig, AdminSecurityConfig를 만들어서 각 경우에 따라 다른 설정을 적용하고 싶은 경우에 두 가지의 config 파일을 만들 수 있다고 가정하면.. 저의 경우에는 AdminSecurityConfig에서 지정한 부분이 권한 정보에 따라 접근이 막히지 않고 다 접근이 가능한 ("/admin/pay"를 user가 접근 가능) 상황이었습니다. 뭐가 문제인지 한참을 찾던 도중 https://docs.spring.io/spring-security/reference/servlet/configuration/java.html 공식 문서를 통해 답을 찾았습니다. 간략하게 해결법부터 말씀드리자면 path로 접근 제한을 하는 경우에 http.securityMatcher()를 사용해야 한다는 점 입니다. 이렇게 하면 아주 잘 구분이 되더군요..! 혹시나 저처럼 하시는 분이 계실까봐 남깁니다..! @Bean @Order(0) public SecurityFilterChain adminFilterChain(HttpSecurity http) throws Exception{ http .securityMatcher("/admin/pay") .authorizeHttpRequests(request -> request.anyRequest().hasRole("ADMIN")); return http.build(); } @Bean @Order(1) public SecurityFilterChain systemFilterChain(HttpSecurity http) throws Exception{ http .securityMatcher("/admin/**") .authorizeHttpRequests(request -> request .anyRequest().hasAnyRole("SYS", "ADMIN")); return http.build(); } @Bean @Order(2) public SecurityFilterChain filterChain(HttpSecurity http) throws Exception{ http .authorizeHttpRequests(request -> request .requestMatchers(antMatcher("/user/**")).hasRole("USER") .anyRequest().authenticated());
미해결
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
FutureOr<String?> redirectLogic(BuildContext context,GoRouterState state) { final UserModelBase? user = ref.read(userMeProvider); //로그인 중 final logginIn = state.location == '/login'; //회원가입 페이지 이동중인지 final joinIn = state.location == '/login/join'; //유저 정보가 없는데 //로그인중이면 그대로 로그인 페이지에 두고 //만약 로그인중이 아니라면 로그인 페이지로 이동 if(user == null && !joinIn){ return logginIn ? null : '/login'; } // //유저 정보가 없는데 // //로그인중이면 그대로 로그인 페이지에 두고 // //만약 로그인중이 아니라면 로그인 페이지로 이동 if(user is UserModelLoading){ return logginIn ? null : '/login'; } // // //user가 null이 아님 // // //UserModel // //사용자 정보가 있는상태면 // //로그인 중이거나 현재 위치가 SplashScreen이면 // //홈으로 이동 if(user is UserModel){ return logginIn || state.location == '/splash' ? '/' : null; } return null; } 위와 같은 redirect 로직에서 처음 final UserModelBase? user = ref.read(userMeProvider); 위와 같은 코드를 실행 할 떄 final userMeProvider = StateNotifierProvider<UserMeStateNotifier,UserModelBase?>((ref) { return UserMeStateNotifier(); }); class UserMeStateNotifier extends StateNotifier<UserModelBase?>{ UserMeStateNotifier() : super(UserModelLoading()) { get(); } Future<void> get() async{ //spalsh화면을 2초 보여주기 위한 스탑워치 await Future.delayed(Duration(milliseconds: 1800)); state = null; return; } Future<void> getMe(UserModel userModel) async { state = userModel; } } 위의 코드에서 get 함수를 거치게 되는데 await를 걸어둔 delayed 로직이 다 끝나기도 전에 return을 해버려 splash 이미지가 다 뜨기도전에 로그인 화면으로 넘어갑니다 해결방법이 있을까요