묻고 답해요
131만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[LV1] Jetpack Compose - UI 연습하기
강의자료실 주소를 알고싶어요
강의자료실 주소를 알고싶어요
-
미해결[LV1] Jetpack Compose - UI 연습하기
implementation 'androidx.navigation:navigation-compose:2.7.4' 입력시 발생하는 에러 문의합니다.
Navigation 을 따라하는 중 'implementation 'androidx.navigation:navigation-compose:2.7.4' 를 추가하여 rememberNavController 가 나오지 않아 Sync Project with gradle file 을 진행한 후 remembernavController 는 import 되었습니다. 하지만 build 시 아래와같은 에러로 문제가 발생합니다. Duplicate class kotlin.collections.jdk8.CollectionsJDK8Kt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.internal.jdk7.JDK7PlatformImplementations found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.internal.jdk7.JDK7PlatformImplementations$ReflectSdkVersion found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.internal.jdk8.JDK8PlatformImplementations found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.internal.jdk8.JDK8PlatformImplementations$ReflectSdkVersion found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.io.path.DirectoryEntriesReader found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.ExperimentalPathApi found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.FileVisitorBuilder found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.FileVisitorBuilderImpl found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.FileVisitorImpl found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.LinkFollowing found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathNode found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathRelativizer found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathTreeWalk found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathTreeWalk$bfsIterator$1 found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathTreeWalk$dfsIterator$1 found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathTreeWalkKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathWalkOption found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathsKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathsKt__PathReadWriteKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.io.path.PathsKt__PathUtilsKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.jdk7.AutoCloseableKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk7-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20)Duplicate class kotlin.jvm.jdk8.JvmRepeatableKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.jvm.optionals.OptionalsKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.random.jdk8.PlatformThreadLocalRandom found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.streams.jdk8.StreamsKt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.streams.jdk8.StreamsKt$asSequence$$inlined$Sequence$1 found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.streams.jdk8.StreamsKt$asSequence$$inlined$Sequence$2 found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.streams.jdk8.StreamsKt$asSequence$$inlined$Sequence$3 found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.streams.jdk8.StreamsKt$asSequence$$inlined$Sequence$4 found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.text.jdk8.RegexExtensionsJDK8Kt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20)Duplicate class kotlin.time.jdk8.DurationConversionsJDK8Kt found in modules jetified-kotlin-stdlib-1.8.22 (org.jetbrains.kotlin:kotlin-stdlib:1.8.22) and jetified-kotlin-stdlib-jdk8-1.7.20 (org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20) android studio 에 기본적으로 있는 것을 사용하고 2.7.4 버전도 제공된 것을 import 한것인데 dependency resolution errors 가 발생하고 있어서요. 이를 해결할 방법이 있을까요?감사합니다.
-
미해결실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)
Book.kt 추가후 에러
태현님 안녕하세요!저도 같은 에러가 발생했는데 (질문 게시판에 같은 질문이 있는데... 링크를 얻기가 어렵네요)build.gradle 에implementation 'org.jetbrains.kotlin:kotlin-reflect:1.2.41'을 추가하니까 해결 되었습니다..! 혹시 원인을 알 수 있을까요?현재까지 공부한 프로젝트를 보내고 싶은데... 메일로 보낼수 있을까요? 파일 첨부가 안되네용
-
미해결모던 안드로이드 - Jetpack Compose 입문
viewModel: MainViewModel = viewModel() 에 오류있습니다
39번줄 = viewModel() 와 48번줄 .observeAsState("LiveData") 에서 빨간줄이 생기고 실행하면 아래 오류가 발생합니다수고많으신 강사님 늘 건강하시고 부자되세요
-
미해결윤재성의 Kotlin 기반 안드로이드 앱 개발 Part4 - 실전 프로젝트
splash 안되시는 분들 확인해주세요
build.gradle(Module: app)dependencies 에 implementation 'androidx.core:core-splashscreen:1.0.1' 을 추가해주세요 values/themes/themes.xml<style name="원하는 스플래쉬 테마명을 넣어주세요" parent="Theme.SplashScreen"> <item name="android:windowSplashScreenBackground">@color/white</item> <item name="android:windowSplashScreenAnimatedIcon">원하는 스플래쉬 이미지를 넣어주세요. 필자는 원형 이미지를 추천합니다</item> <item name="android:windowSplashScreenAnimationDuration">1000</item> <item name="postSplashScreenTheme">@style/애플리케이션의 메인 테마명을 넣어주세요</item> </style>위의 코드를 추가해주세요여기서 주의할 점은 "특정 sdk 버전 이상에 맞춰서 오버라이드 해주세요" 라는 경고 메세지가 나오는데 이를 무시해야 되는겁니다 AndroidManifest.xmlapplication 태그 내에 아래의 코드를 추가해주세요android:theme="@style/위에서 정해둔 스플래쉬 테마명을 넣어주세요"혹시나 싶어 말씀드리는데 한글 그대로 적는게 아니라 작성하시는 분께서 저 조건에 맞춰서 적어주셔야 됩니다 모든 Activity 의 onCreate 내 아래의 코드를 추가해주세요installSplashScreen()추가하지 않을 경우 AppCompatActivity랑 theme 관련해서 에러가 발생해요 특정 버전 이상부터 splash 적용하는 방법을 소개해드렸습니다많은 분들께 도움이 되기를 바라요PS. 깜빡한게 있네요앱 처음에 빌드하고 실행하는 순간에는 splash가 나오지 않습니다앱을 종료하고 설치한 앱을 클릭해서 다시 실행할 경우 splash가 적용되신걸 확인할 수 있습니다
-
미해결모던 안드로이드 - Jetpack Compose 입문
AAR metadata 관련오류발생
class MainViewModel : ViewModel() { val data = mutableStateOf("Hello") } class MainActivity : ComponentActivity() { private val viewModel by viewModels<MainViewModel>() override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { Column( modifier = Modifier.fillMaxSize(), verticalArrangement = Arrangement.Center, horizontalAlignment = Alignment.CenterHorizontally ) { Text( viewModel.data.value, fontSize = 30.sp ) Button(onClick = { viewModel.data.value = "World" }) { Text("변경") } } } } }강사님 늘 건강하시고 부자되세요 위 코드를 실행하니 아래오류가 발생하네요 3 issues were found when checking AAR metadata:
-
해결됨예제로 뿌수는 코틀린 Kotlin 76제
코틀린은 왜 final이 기본으로 선택한건가요?
타입을 추론하면 final이 기본으로 붙고상속도 기본으로 final이 붙어서 안되고오버라이딩도 final이 기본으로 붙어서 설정을 해줘야합니다.열려있는 자바와는 다르게 코틀린은 기본적으로 닫혀있다는걸 느꼈습니다.이렇게 코틀린이 오버라이딩과 상속, 재할당금지를 선택하게하는 이유가 뭔지 궁금합니다
-
미해결모던 안드로이드 - Jetpack Compose 입문
모바일화면에 키보드가 사라지지 않아
class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { val navController = rememberNavController() // Composable 의 backstack 추적 & 각 Screen 들의 state을 관리함 NavHost( // navigation grpah 를 생성 navController = navController, startDestination = "first" ) { composable(route = "first") { FirstScreen(navController) } composable(route = "second") { SecondScreen(navController) } composable(route = "third/{value}") { backStackEntry -> ThirdScreen( navController, value = backStackEntry.arguments?.getString("value") ?: "", ) } } } } } @OptIn(ExperimentalMaterial3Api::class) @Composable fun FirstScreen(navController: NavController) { val(value, setValue) = remember { mutableStateOf("") } Column( modifier = Modifier.fillMaxSize(), verticalArrangement = Arrangement.Center, horizontalAlignment = Alignment.CenterHorizontally ) { Text("첫화면") Spacer(modifier = Modifier.height(16.dp)) Button(onClick = { navController.navigate("second") }) { Text("두번째화면으로") } Spacer(modifier = Modifier.height(16.dp)) TextField(value=value, onValueChange = setValue) Button(onClick = { if(value.isNotEmpty()) { navController.navigate("third/$value") } }) { Text("세번째화면으로") } } } @Composable fun SecondScreen(navController: NavController) { Column( modifier = Modifier.fillMaxSize(), verticalArrangement = Arrangement.Center, horizontalAlignment = Alignment.CenterHorizontally ) { Text("두번째화면") Spacer(modifier = Modifier.height(16.dp)) Button(onClick = { navController.navigateUp() // navController.popBackStack() 도 가능함 }) { Text("뒤로가기") } } } @Composable fun ThirdScreen(navController: NavController, value:String) { Column( modifier = Modifier.fillMaxSize(), verticalArrangement = Arrangement.Center, horizontalAlignment = Alignment.CenterHorizontally ) { Text("세번째화면") Spacer(modifier = Modifier.height(16.dp)) Text(value) Button(onClick = { navController.navigateUp() }) { Text("뒤로가기") } } }위 코드실행 후 란에 문자열입력하면 모바일화면에 키보드가 사라지지 않아세번째화면 버튼이 안보여 누를 수 없는데 실력이 초보라 어찌할 바를 보르겠네요 *.^
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
firebase sdk추가시
firebase sdk 추가하려는데 선생님이 추가하시는거는 buildscript인데 제 파이어베이스 사이트에는 plugin 이예요 ㅜㅜ
-
해결됨[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
자꾸 질문을 드려서 죄송합니다
선생님 안녕하세요?버튼 수업을 듣는데 저의 경우는 밑에 바가 아예 나오지를 않아서요, 어디서 잘못된 건지 알 수 있을까요?감사합니다.
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
파이어베이스에 닉네임도 저장할수있나요?
강의 들으면서 더 나아가 게시글에 작성자 닉네임을 넣고싶은데, 파이어베이스 데이터 베이스에 닉네임을 어떻게 넣는지 궁금해요. 아이디 비번은 파이어베이스 사이트에 있는데 닉네임을 어떻게 넣어야할지 모르겠어요ㅠㅠ
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
이미지 태그 질문입니다
이렇게 imageView끝에 />를 해주거나이렇게 해주는거나 똑같은것같은데 상관없죠?
-
미해결[LV1] Jetpack Compose - UI 연습하기
horizontalArrangement verticalAlignment 관련질문입니다
위의 코드중에서 아래horizontalArrangement = Arrangement.SpaceEvenly, verticalAlignment = Alignment.CenterVertically,이부분 코드를 추가해도 여전히 글자들은 화면상단 좌측에 정렬되는 군요 ...
-
미해결[LV1] Jetpack Compose - UI 연습하기
혹시 Lv2 강의는 언제쯤 올라오는 알수잇을까요?
이번 강의에 관련된 질문은 아니지만, Lv2 도 차근차근 올려주신다고했는데, 혹시 Lv2 는 언제쯤 올라오는지 알 수 있으까요? ㅠ
-
미해결[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z
Room DB와 firebase 차이
Room DB와 firebase 차이가 궁금합니다~! Room DB는 내장데이터를 잡아먹고 firebase는 비용을 지불하면서 서버에 저장공간을 구축하는게 좋은걸까요? 전문 개발자 목표가 아닌 아마추어 개발자의 입장에서는 어떤게 더 사용하기 쉬울지도 추천해주세요 :)
-
미해결[LV1] Jetpack Compose - UI 연습하기
강사님 닉네임에 생각나는 것이 있어용 ^^
포항에 가니 죽도시장에 개복치회가 있던데 혹시 고향이 포항부근이신감유 *.^
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
디바이스연결시 이미지 안뜸
가상디바이스에 연결했을때는 콘텐츠 리스트에 있는 콘텐츠들의 사진이 뜨는데 디바이스를 직접 연결했을때는 이미지가 나오지 않습니다. url 문제인가요? 혹시 url 문제라면 파이어베이스의 이미지 부분에 어떤것을 넣어야하나요?
-
미해결홍드로이드의 To-Do 리스트 앱 만들기
구글콘솔 광고 ID
덕분에 현재 저만의앱을 만들고 출시 직전까지 와있습니다.근데 이 강의에는 그 질문이 없는데 새롱 변경된 구글콘솔 질문에 앱에서 광고 ID를 사용하나요?라는 질문이 있는데 뭔말인지 모르겠습니다!애드몹에서 광고를 사용하는데 그거 말하는걸까요? 근데 그부분은 이미 앱에 광고가 있다는 질문이 있었는데 이거와는 뭐가 다른건가요? 일단 '아니요'클릭하긴했는데 뭔말인지 잘모르겠습니다!도와주시면 감사하겠습니다!
-
미해결[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z
dataBinding 오류, hasFineLocationPermission 오류
안녕하세요 선생님,첨부와 같이 2가지 오류가 발생 중입니다.[MainActivity.kt] 에서 dataBinding 호출 오류[LocationProvider.kt] 에서 hasFineLocationPermission, hasCoarseLocationPermission 오류build.gradle.kts (모듈 수준)에 플러그인, 의존성 주입, 안드로이드 태그 내 데이터바인딩 태그 삽입 등 모두 정상 진행됐고 싱크 오류는 없었습니다.캐시도 지워봤지만 소용없는데ㅠ 뭘 더 확인해봐야 할까요?도움 부탁드립니다!
-
미해결[초급] 찍어먹자! 코틀린과 Spring Security + JWT로 회원가입 만들기
1 : N 필드 `memberRole` 에 @OneToMany 옵션 cascade 미사용, 컬랙션 null 초기화 에 대한 질문입니다.
class Member( ... ) { @OneToMany(fetch = FetchType.LAZY, mappedBy = "member") ⬅️Q1:"cascade 없음 이유" val memberRole: List<MemberRole>? = null ⬅️Q2: "null 초기화"(mutableListOf() 누락) } Q1:cascade 미사용:강의 컨샙에 맞춰 쉬운 예제 구성을 목적으로 컬랙션 필드에 Cascade 설정을 안하신게 아닐까 추측했지만, 한편으로 다른 구현방법에 대한 다른이유가 있으신 것인지 강의에 언급되지 않은 부분을 여쭤보고 싶었습니다.Q2:컬랙션 null 초기화:일반적인 JPA 예제에서는 JpaEntity 의 1:N 관계 필드는 Collection 초기화를 하더라구요. null 로 초기화 할 때의 장점 이라던지, 다른 이유가 있는지 궁금해서 남기게 되었습니다. 읽어주셔서 감사합니다.