섹션7 게시글 등록화면에서 firestore작업에 Batch적용 부분에 6:49 부분에서 테스트를 했는데 파일선택하고, feed버튼을 크릭하면 가로로 움직이는 에니메이션과 Exception 에러가 떠야하는데 뜨지않습니다. 아무리 봐도 그부분은 이상없는듯 한데 한번 봐주세요. 에러가 있으면 에러 처리라도 하겠는데 에러는 없습니다. 압축파일과 함께 메일로 보냈습니다.
RecyclerView의 Adapter를 선언할 때, context는 어떤 용도로 생성자로 받게되는건가요? 의문포인트 context를 생성자로 받지않더라도 RecyclerView의 구현에는 문제없이 되는 부분이 의아했습니다. context를 생성자로 받는것과 받지 않는것과는 어떤 차이가 있나요? [왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin) 강의의 RecyclerViewAdapter를 구현하실 때에는 context를 별도로 생성시 인자로 받지 않았던 것으로 기억하거든요.
class MainActivity : AppCompatActivity() { private lateinit var binding : ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) binding = setContentView(this, R.layout.activity_main) e: file:///C:/Users/break/AndroidStudioProjects/Databinding_ex/app/src/main/java/com/example/databinding_ex/MainActivity.kt:16:36 Unresolved reference: ActivityMainBinding 라고 오류메세지가 발생합니다.. ChatGPT는 ActivityMainBinding 클래스가 제대로 생성되지 않는 이유는 주로 View Binding이 활성화되지 않았거나, 캐시 문제 또는 Gradle 동기화 문제가 있을 수 있습니다. 위의 단계를 통해 문제를 해결할 수 있을 것입니다. 라고 설명하긴 하는데, 얘가 말한대로 적어봐도 해결되지가 않네요..
강의 내용을 따라서 new porject를 Empty Activity로 만들었는데요, res 폴더밑에 내용이 좀 다르네요.. 저같은 경우 res >drawble >mipmap >values >xml 이렇게 구성되어있는데 layout 폴더가 없고 activity_main.xml 파일을 찾을 수가 없습니다 .. 어떻게 해결해야 하나요 ?
섹션5AuthStatus상태에 따른화면이동_2push And RemoveUntil사용해서 화면이동 (route) => route.isFirst, 여기에서 route속성에서 4개가 있는데 나머지 3개는 어떤 역활을 하는겁니까 isActive isCurrent popDisposition 검색을 해도 무슨말인지 잘 이해가 안가서요.
안녕하세요. 저는 안드로이드 개발자로 백엔드와 협업을 하면서 겪게된 문제로 질문을 하려고합니다. 백엔드분이 명세해주신 Swagger를 보면 성공적으로 데이터를 받아 왔을때 { "code": 0, "message": "null", "content": [ { "authorId": 0, "username": "string", "UserProfileImageUrl": "string", "currentJob": "회사원", "grade": "JUNIOR", "profileTitle": "프로필 제목", "introduceFirst": "자기소개 첫째줄", "introduceSecond": "자기소개 둘째줄", "introduceThird": "자기소개 셋째줄" } ] } 이렇게 날라오는데 혹시나 어떠한 오류가 발생했을땐 { "code": 401, "message": "Failed JWT verification!", "content": "UNAUTHORIZED" } 이렇게 에러코드와 메세지를 주면서 content에서도 어떤 문제가 생겼지, 문자열로 변환이 되어서 날라옵니다. 즉, content의 타입이 객체에서 문자열로 바뀌게 됩니다. 저의 코드는 이러합니다. data class ResponseDto<T>( @SerializedName("code") val code: Int, @SerializedName("message") val message: String?, @SerializedName("content") val content: T? ) data class AuthorResponseDto( @SerializedName("authorId") val authorId: Int, @SerializedName("userName") val userName: String, @SerializedName("userProfileImageUrl") val userProfileImageUrl: String, @SerializedName("currentJob") val currentJob: String, @SerializedName("grade") val grade: String, @SerializedName("profileFirst") val profileFirst: String, @SerializedName("profileSecond") val profileSecond: String, @SerializedName("profileThird") val profileThird: String ) interface WriterApiService { @GET("api/v1/authors") @Headers("Authorization: Bearer ${Constants.USER_ACCESS_TOKEN}") suspend fun authors( @Query("lastAuthorId") lastAuthorId: Int, @Query("specialtyFilter") specialtyFilter: String ): ResponseDto<AuthorResponseDto> } 현재 ResponseDto DataClass는 어떠한 API를 쓸때마다 계속 사용하고있어 제네릭타입으로 사용하고 있었습니다. 그러나 에러가 발생했을때 타입 불일치로 ( content는 에러 발생시 String으로만 값을 주고 있음 ) 백엔드에서 보내주는 에러 메세지와 에러 코드 자체를 볼 수 가없는 상황입니다 ㅠ 백엔드분께 이에대해 문제를 제기해보니, 이건 안드로이드 개발자인 제가 이 명세서에 맞게 분기처리를 해줘야 한다고합니다. iOS 개발자님께 이 분기처리를 어떻게 해주었냐고 여쭈어 보았더니 이런 문제를 겪어 본적이 없어 해결방안을 얻지 못하였습니다.. 하지만 약간의 의구심과 해결 방법을 알고싶습니다 ㅠ 백엔드와 협업할때 당연히 발생하는 문제인지? 어차피 에러 코드와 메세지를 보내주는데 굳이 객체를 담고 있는 content를 에러메세지 형식으로 보내는것이 맞는지? 해당 문제를 어떻게 해결하면 좋을지.. 안드로이드에서 처리를 해야한다면 각 타입에 따라 분기 처리를 해줘야 하는지? 이건 제네릭 타입으로 하면 안되는건가..? 분기 처리 문제가 아니라 애초에 제가 코드상으로 타입이라던지 반환값등을 잘못 설정 하고 있는건지 이 문제로 3일간 고민해보고 gpt, 린튼등 ChatBot과 레퍼런스등을 참고하고있는데 확실한 답을 찾기가 어렵습니다.. 도움 요청합니다!!!!