강의 내용을 따라서 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과 레퍼런스등을 참고하고있는데 확실한 답을 찾기가 어렵습니다.. 도움 요청합니다!!!!
image1 이후 image2부터 image7까지 intent 코드 작성 완료 후 에뮬레이터 실행함에 있어 오류가 발생합니다. 코드 구글드라이브로 공유드립니다. <MainActivity코드> https://drive.google.com/file/d/1AI7ZI-HOe5er1xHk3soxKr755aIF23iK/view?usp=sharing <activity_main_xml코드> https://drive.google.com/file/d/1AI7ZI-HOe5er1xHk3soxKr755aIF23iK/view?usp=sharing 감사합니다..
val gso = GoogleSignInOptions .Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestIdToken(getString(R.string.default_web_client_id)) .requestEmail() .build() R.string.default_web_client_id 를 설정하지 않았다고 계속 에러가 떠는데, 어떡해 해야 하는지 알고 싶습니다. 그리고 GoogleSignIn이 현제는 deprecate 되었는데, 참고할 만한 자료가 있는지 알고 싶습니다.
안녕하세요. 유용한 강의 덕에 안드로이드 스튜디오 공부가 재밌어지네요! 공부하던 중 갑자기 궁금한 사항이 생겼는데 트와이스 앱을 구현하여 1번 이미지를 눌렀을 때 전에 배웠던 bts앱 초기 화면으로 이동하는 방법이 있나요? 아예 bts프로젝트 앱을 이동시키는 방법이요. 구글 검색에서는 프로젝트 앱 하나가 아닌 이미지 화면 이동만 보여서요.. 혹시 intent fillter를 사용하면 될까요?
아래와 같이 타입캐스팅이 안되는 이유가 무엇일까요?? private fun isLocationServicesAvailable() : Boolean{ // LocationManager로 타입캐스팅 val locationManager = getSystemService(LOCALE_SERVICE) as LocationManager return (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER) || locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER) }
해당 코드에서 todo : TodoEntity를 사용하잖아요? 여기서 todo는 어디서 나온건가요?? 변수인건가요? @Dao interface TodoDao { @Query("SELECT * FROM TodoEntity") fun getAllTodo() : List<TodoEntity> @Insert fun insertTodo(todo : TodoEntity) @Delete fun deleteTodo(todo : TodoEntity) }