묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
파이어 베이스 연결이 되지않습니다.
영상에서 설명주신대로 firebase연결을 시도하였지만위와 같은 오류가 계속 뜹니다.이를 추가하기위해서는 안드로이드 스튜디오나 gradle의 버전을 낮추어야하는걸까요?
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
데이터바인딩 설명 강의가 보이지 않아요
다른 강의들은 잘 보이는데 데이터바인딩 강의가 보이지 않습니다. 확인 부탁드립니다.
-
미해결자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
코틀린 싱글톤 질문
강사님께서 코틀린으로 서버를 만드실 때 object로 싱글톤 만드는 방법을 사용하지는 않는다고 하셨는데 실제 현업에서 이러한 방식으로 싱글톤을 많이 안만드나요? 혹시 이러한 방식을 사용하는 현업에서의 예제가 있다면 어떤게 있나요?
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
AVD가 보이지 않아요..
안녕하세요. 사진처럼 AVD가 보이지 않아요.....ㅠ 최신 버전이여서 안보이는걸까요..?
-
미해결자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
가변인자 외에 추가로 다른 타입의 인자를 받는 경우에는 어떻게 하나요?
가변인자 외에 추가로 다른 타입의 인자를 받는 경우에는 어떻게 하나요?
-
미해결모던 안드로이드 - Jetpack Compose 입문
깃허브에 있는 MemoryTodoRepository 는 룸을 사용하는게 아닌 메모리에 저장, 수정, 삭제 하는건가요?
Room처럼 내부저장소에 저장하는 것이 맞다면,Room을 사용 하지 않는 방법인데 작동되는 건 아예 똑같은 건가요?아니면 저장되는 곳이 다르다거나 저장방식은 다른데 같은 역할로써 쓰일 수 있는건가요?
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
웹뷰 AVD 실행안됨
팁 페이지 만들기 부분에서 연결되는 웹페이지만 다르게 하여 페이지를 구현 중인데, AVD를 실행시키니까 계속 로딩되다가 Timed out after 300 seconds waiting for emulator to come online.라는 에러메시지가 뜨면서 아예 실행이 안됩니다.. 웹url부분이 너무 큰 용량을 차지하는 걸까요? 이럴 땐 어떻게 하면 좋을까요..?그리고 이런 오류가 나기 전에 한 번 실행은 됐었는데 그때는 웹뷰가 제대로 안 뜨고 흰 화면만 계속 뜨는 현상이 나왔습니다.. 찾아보니까 ssl 인증을 무시하는 코드를 쓰면 된다는데 그렇게 하면 해결이 될까요? 일단 AVD가 실행이 안돼서 확인이 안됩니다..
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
네비게이션(Navigation) 만들어보기, 프래그먼트(Fragment)에 대한 이해 강의에서 navigation android resource file만들 때
안녕하세요 네비게이션(Navigation) 만들어보기, 프래그먼트(Fragment)에 대한 이해 강의에서 navigation android resource file만들 때 Add Project Dependency 팝업이 뜨는데 강의의 팝업과는 좀 다릅니다. This operation requires the libraries androidx.navigation:navigation-fragment-ktx:+, androidx.navigation:navigation-ui-ktx:+. Problem: Inconsistencies in the existing project dependencies found. Version incompatibility between: - androidx.appcompat:appcompat:1.7.0 and: - androidx.core:core-ktx:1.13.1 With the dependency: - androidx.lifecycle:lifecycle-common:2.3.1 versus: - androidx.lifecycle:lifecycle-common:[2.6.2] The project may not compile after adding these libraries. Would you like to add them anyway? 라고 뜨는데 version 충돌나서 compile이 안될 수 있다는 뜻으로 보이는데요. 그냥 진행해도 괜찮을까요?Android Studio 버전은 Koala | 2024.1.1 쓰고 있습니다.
-
해결됨깡샘의 쌩초보 안드로이드 One Day Class – Part2 코틀린 이해하기
val로 선언한 List는 변경이 가능한가요?
val list1 = mutableListOf(10,20) 으로 list를 선언했는데, 이때 val로 선언을 하면, int type의 변수는 변경이 불가능한데 List type은 변경이 가능하나요?
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
org.junit.jupiter.api.extension.ParameterResolutionException: Failed to resolve parameter
테스트 코드 실행시 의존성 주입이 안되는 듯한 에러가 있습니다...org.junit.jupiter.api.extension.ParameterResolutionException: Failed to resolve parameter [com.mkim.portfolio.domain.repository.ExperienceRepository experienceRepository] in constructor [public com.mkim.portfolio.domain.repository.ExperienceRepositoryTest(com.mkim.portfolio.domain.repository.ExperienceRepository)]: Failed to load ApplicationContext for [MergedContextConfiguration@41120e48 testClass = com.mkim.portfolio.domain.repository.ExperienceRepositoryTest, locations = [], classes = [com.mkim.portfolio.PortfolioApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceDescriptors = [], propertySourceProperties = ["org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.OverrideAutoConfigurationContextCustomizerFactory$DisableAutoConfigurationContextCustomizer@15bb5034, org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@1f, org.springframework.boot.test.autoconfigure.filter.TypeExcludeFiltersContextCustomizer@34be3d80, org.springframework.boot.test.autoconfigure.properties.PropertyMappingContextCustomizer@854e4b26, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizer@7a35b0f5, [ImportsContextCustomizer@165a5979 key = [org.springframework.boot.autoconfigure.transaction.TransactionAutoConfiguration, org.springframework.boot.autoconfigure.data.jpa.JpaRepositoriesAutoConfiguration, org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManagerAutoConfiguration, org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration, org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration, org.springframework.boot.autoconfigure.sql.init.SqlInitializationAutoConfiguration, org.springframework.boot.test.autoconfigure.jdbc.TestDatabaseAutoConfiguration, org.springframework.boot.autoconfigure.flyway.FlywayAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration, org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.JdbcClientAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration, org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration]], org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@7bd7d6d6, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@2a8448fa, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.context.SpringBootTestAnnotation@4d8dfd98], contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] @Autowired 도 잘 넣은듯한데 왜 해당 에러가 발생하는지를 파악을 못하고 있습니다...test를 하려하는 타겟 레포지토리도 하위 경로에 잘 존재합니다.interface ExperienceRepository : JpaRepository<Experience, Long> { fun findAllByIsActive(isActive: Boolean): List<Experience> }현재 플러그인과 디펜던시는 아래와 같습니다.plugins { id("org.springframework.boot") version "3.3.0" id("io.spring.dependency-management") version "1.1.5" kotlin("plugin.jpa") version "1.9.24" kotlin("jvm") version "1.9.24" kotlin("plugin.spring") version "1.9.24" } dependencies { implementation("org.springframework.boot:spring-boot-starter-data-jpa") implementation("org.springframework.boot:spring-boot-starter-thymeleaf") implementation("org.springframework.boot:spring-boot-starter-validation") implementation("org.springframework.boot:spring-boot-starter-web") implementation("com.fasterxml.jackson.module:jackson-module-kotlin") implementation("org.jetbrains.kotlin:kotlin-reflect") runtimeOnly("com.h2database:h2") runtimeOnly("com.mysql:mysql-connector-j") testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("org.jetbrains.kotlin:kotlin-test-junit5") testRuntimeOnly("org.junit.platform:junit-platform-launcher") }제가 확인해야할 부분을 잘 못찾고 있는듯합니다... 혹시 제가 놓치는 부분이 있을까요?
-
미해결2시간으로 끝내는 코루틴
Job 질문이 있습니다
이전 강의 설명에서 아래의 코드가 실행될 때 launch로 만든 코루틴이 바로 실행되지 않고 다음 코드로 넘어간다고 했는데fun main(): Unit = runBlocking { println("START") launch { newRoutine() } println("END") }왜 아래의 코드에서는 job 객체를 변수에 담으면 다음 코드로 넘어가는게 아니라 바로 실행이 되는건가요?fun main(): Unit = runBlocking { val job = launch { (1..5).forEach { printWithThread(it) delay(500) } } delay(1_000L) job.cancel() }
-
해결됨모던 안드로이드 - Jetpack Compose 입문
이젠 아래와 같은 오류가 뜨는데 KSP가 문제 인걸까요?
파랑색 둘다 해봤는데 이유를 못 찾겠네요 ㅠㅠ
-
미해결모던 안드로이드 - Jetpack Compose 입문
영상 1분쯤에서 MainActivity에서 viewModel이 저는 안되고 그래들 문제인거 같은데 해결 방법을 모르겠습니다.
깃허브에 있는걸 복붙하면 viewModel 부분에서 맨 아래와 같이 오류가 발생해서 맨 위에있는건 https://developer.android.com/codelabs/basic-android-kotlin-training-viewmodel?hl=ko#3이 링크에서 implementation 하라고 하는걸 넣은 것이고 가운데는 첫번째를 2번째와 같이 변경하라는 추천해서 변경된 내용을 넣은겁니다.저기서 compose로 끝나는게 그래들이 안되서 MainActivity에서의 viewModel도 영상과 달리 아래처럼만 되어 있는데 해결방법을 전혀 모르겠습니다.
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
bts앱 MainActivity.kt 부분 질문드립니다
package com.example.bts_lecture import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.activity.enableEdgeToEdge import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding import androidx.compose.material3.Scaffold import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import com.example.bts_lecture.ui.theme.Bts_lectureTheme class MainActivity : ComponentActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) enableEdgeToEdge() setContent { Bts_lectureTheme { Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding -> Greeting( name = "Android", modifier = Modifier.padding(innerPadding) ) } } } } } @Composable fun Greeting(name: String, modifier: Modifier = Modifier) { Text( text = "Hello $name!", modifier = modifier ) } @Preview(showBackground = true) @Composable fun GreetingPreview() { Bts_lectureTheme { Greeting("Android") } }여기서 어디를 지워야할지 모르겠습니다
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
자막켜기가 안되요 ㅜ.ㅜ
자막 켜기를 누르면 오류가 발생합니다.
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
리사이클러뷰, 그리드레이아웃 오류
개발자님 안녕하세요! 바로 어제 질문하기 게시판에 리사이클러뷰, 그리드레이아웃매니저 오류 관련해서 질문 남겼습니다. 전체 코드를 첨부하면 더 좋을 것 같아서 다시 질문하기 남깁니다. 감사합니다.https://drive.google.com/drive/folders/1RKYQLjYsoZ50rcQbUq7xiJQdwPOhWdK9?usp=share_link rv.layoutManager = GridLayoutManager(this, 2) val items = ArrayList<ContentsModel>() items.add(ContentsModel("imageUrl1", "title1")) items.add(ContentsModel("imageUrl2", "title2")) items.add(ContentsModel("imageUrl3", "title3")) items.add(ContentsModel("imageUrl4", "title4")) val rvAdapter = ContentsRVAdapter(items) rv.adapter = rvAdapter 이 부분은 나름대로 해결해보려고 하다가 강의랑 다르게 순서를 바꿔놓았는데 변하는 건 없었습니다 ㅠ 어떻게 해결할 수 있는지 알려주시면 정말 큰 도움이 될 것 같습니다! 감사합니다.
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
랜덤함수
랜덤함수에서 Random.nextInt(1,7) 이렇게 해야 6주사위까지 뜰수있는것 같습니다.
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
리사이클러뷰 오류 해결 방법이 궁금합니다.
개발자님 안녕하세요. 안드로이드 커뮤니티 앱 만들기 섹션 4 팁 페이지 만들기 중 컨텐츠 리스트 만들기를 공부하고 있습니다. 공부하던 중 리사이클러뷰에 오류가 있어서 질문 남깁니다. 오류는 화면에 그리드의 개수만큼만 아이템이 뜹니다. 아이템을 4개를 넣어 놓았을 때, 그리드의 개수가 2개면 아이템 2개만, 그리드 개수가 3개면 아이템 3개만, 4개면 4개만 화면에 뜹니다. 그리드 개수가 5개면 4개만 뜹니다. 관련 코드 아래에 작성해 놓겠습니다. 검토해주시면 정말 감사하겠습니다. 혹시 전체 코드가 필요할 시 바로 구글드라이브로 전달해드리겠습니다!! 매번 감사드립니다.-ContentsListActivitypackage com.example.mysolelife.contentsList import android.os.Bundle import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat import androidx.recyclerview.widget.GridLayoutManager import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView import com.example.mysolelife.R class ContentsListActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_contents_list) val rv : RecyclerView = findViewById(R.id.rv) val items = ArrayList<ContentsModel>() items.add(ContentsModel("imageUrl1", "title1")) items.add(ContentsModel("imageUrl2", "title2")) items.add(ContentsModel("imageUrl3", "title3")) items.add(ContentsModel("imageUrl4", "title4")) val rvAdapter = ContentsRVAdapter(items) rv.adapter = rvAdapter rv.layoutManager = GridLayoutManager(this, 2) } }-ContentsModeldata class ContentsModel ( var title: String = "", val imageUrl : String = "" )-ContentsRVAdapterclass ContentsRVAdapter(val items : ArrayList<ContentsModel>) : RecyclerView.Adapter<ContentsRVAdapter.Viewholder>() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ContentsRVAdapter.Viewholder { val v = LayoutInflater.from(parent.context).inflate(R.layout.contents_rv_items, parent, false) return Viewholder(v) } override fun onBindViewHolder(holder: ContentsRVAdapter.Viewholder, position: Int) { holder.bindItems(items[position]) } override fun getItemCount(): Int { return items.size } inner class Viewholder(itemView : View) : RecyclerView.ViewHolder(itemView) { fun bindItems(item : ContentsModel){ val contentTitle = itemView.findViewById<TextView>(R.id.textarea) contentTitle.text = item.title } } }-activity_contents_list.xml<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".contentsList.ContentsListActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="카테고리 영역 텍스트" android:textSize="20sp" android:textStyle="bold" android:layout_marginTop="20dp" android:textColor="@color/black" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <androidx.recyclerview.widget.RecyclerView android:id="@+id/rv" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginTop="80dp"/> </androidx.constraintlayout.widget.ConstraintLayout>-contents_rv_items<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".contentsList.ContentsListActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="카테고리 영역 텍스트" android:textSize="20sp" android:textStyle="bold" android:layout_marginTop="20dp" android:textColor="@color/black" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <androidx.recyclerview.widget.RecyclerView android:id="@+id/rv" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginTop="80dp"/> </androidx.constraintlayout.widget.ConstraintLayout>
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
뷰 개발 - 테이블페이지 (삽입 Script)부분
안녕하세요. fragment-script-util.html을 작성하고 강의에서 보여주신것처럼 addDetail('detail')을 동작하는 버튼을 누르면 내용이 비어있는채로 아래에 창이 생기질 않네요. 콘솔에서 확인해보면TypeError: Cannot read properties of null (reading 'detail') at addDetail (experience:775:65) at HTMLButtonElement.onclick (experience:366:105)이 나타나고 콘솔로그를 찍어보면 데이터테이블 초기화가 안되고 있는것같습니다. 어떤부분을 점검해봐야할까요
-
미해결[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
firebase 스마트폰으로 연결이 안되는데 원인이 있을까요
https://github.com/nadazelda/androidKotlinStudy.git노트북에서 가상머신 띄우기엔 너무 느려서;;제 개인 핸드폰으로 실행하는데 firebase 연결이 안되고 있어요git에 소스 올려뒀습니다_ori가 강의자료고 mysololife 가 지금 제가 작성하는거에요