본문 바로가기

분류 전체보기556

Android] error : Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $ 프로젝트 중 Volley로 작성 된 코드가 있어 이를 Retrofit2로 변경하는 역할을 맡았다. 이 때 마주한 오류 중 하나가 Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $ 이다. 이 오류는 Gson 역직렬화 오류로, 유연하게 해석하면 Json으로 줄 줄 알았는데 Json 형식이 아니네? 우리가 해석할 수 있게 유연하게 해석하는걸 허가해줘! 이다. 맞다, 해당 프로젝트의 서버 Response의 형식은 JSON이 아니라 0, 1, 9999 ... 등으로 간단한 String만 날려주는 응답을 준다. 원래 Gson은 JSON의 형식을 엄격하게 지키기 때문에 이 형식에 의거하지 않으면 형식이 맞지 않다며 오류.. 2024. 2. 5.
Android] error : executing external native build for ndkBuild Serial Port를 사용해야할 일이 있어서 ndk 파일이 포함된 api를 Import 해야할 일이 생겼다. Android.mk 파일을 cpp로 Import 하고 난 후에 생성된 cpp 폴더가 어쩐지 열리지 않더라니, 해당 오류가 발생했다. 이 오류는 ndk 외부 파일을 사용할 때, 단순히 C++ 파일을 추가하기만 하고 빌드하면 생기는 오류이다. 이 오류를 고치는 방법은 단순한데, 외부 ndk를 실행하기 위한 ndk 버전을 지정해주기만 하면 된다. ... externalNativeBuild { ndkBuild { path file('../Android.mk') } } ndkVersion '26.1.10909125' .. 2024. 1. 22.
Kotlin] 배달놀이하기 (친구들끼리 게임하다가 만든 겁니다. 더 좋은 방식이 있다면 같이 연구해봅시다.) 서로 바쁜 친구들끼리 안부를 전하고자 서로 한 명씩 랜덤으로 지정해서 배달을 시켜주기로 했습니다. 내가 본인에게 보낼 수 없으며, 친구는 무조건 한 명이 지정되어야 합니다. 이 때, 서로 다른 친구를 지목하는 알고리즘을 생성하세요. 1. 친구는 2명 이상 10명 미만입니다. 2. 중복되는 친구는 없습니다. 모두 다 다른 이름의 친구입니다. 이 알고리즘의 경우, 똑같은 크기의 배열을 두고 내 자리를 제외한 랜덤으로 빈 자리를 찾아가도록 유도하면 됩니다. 이 때, 자리가 채워졌을 경우 해당 자리를 제외하고 남은 자리를 고르도록 합니다. 예외상황이 있는데, 앞서 모든 사람들이 자리를 차지해버려 마지막 남은 한 사람이 자기 자신을.. 2023. 11. 2.
Swift, iOS] 현재 존재하는 뷰 컨트롤러 확인하기. 개발을 하다보면 현재 살아있는 뷰 컨트롤러를 확인해야할 때가 있다. 이를 확인하는 function이다. func findAllViewControllers() -> [UIViewController] { var allViewControllers: [UIViewController] = [] // 재귀적으로 모든 뷰 컨트롤러를 탐색 func findControllers(from viewController: UIViewController) { allViewControllers.append(viewController) if let navigationController = viewController as? UINavigationController { for childViewController in navigation.. 2023. 10. 18.
반응형