본문 바로가기

개발일지10

[Flutter] Retrofit 적용 별 헤는 밤 앱의 IOS 진출을 위해 Flutter 변환 작업을 하고 있습니다. 그 중 오늘은 앱에서 서버 데이터를 호출하는데 필요한 Retrofit에 대해 얘기 할 계획입니다. RESTful API Retrofit에 대해 설명하려면 RESTful API에 대해 먼저 설명할 필요가 있습니다. REST(Representational State Transfer)는 클라이언트와 서버 간의 통신을 위한 소프트웨어 아키텍처 스타일을 의미합니다. RESTful API은 이런 REST 아키텍처 스타일을 따르는 API로 주요 요소는 다음과 같습니다. 자원: HTTP URI를 통해 웹 서비스의 글, 유저, 이미지 등을 가져옵니다. 행위: HTTP Method를 사용하여 자원에 대한 행위를 나타냅니다. (ex) POST,.. 2024. 4. 16.
[Java] 리플렉션, ObjectMapper 우리가 SpringBoot 에서 rest api 를 개발할 때 흔히 쓰는 @RequestBody 가 정확히 어떻게 동작하는지 생각해본 적이 있는가? /** * 앱 관측적합도 상세 페이지를 위한 실시간 날씨 정보 제공 */ @PostMapping("/observationalFit/weatherPage") public Mono getWeatherInfo(@RequestBody AreaTimeDTO areaTime) { return observationalFitService.getWeatherInfo(areaTime); } 위 코드는 별 헤는 밤 어플의 관측적합도 상세 페이지에서 실시간 날씨 정보를 조회하는 api 이다. 요청 body 로 AreaTimeDTO 객체를 받고 있는데, 외부에서 요청이 들어올 때는.. 2024. 3. 12.
[Android.hardware.Sensor] 안드로이드 Sensor를 활용하여 방위각, 고도 구하기 개요 및 설명 Android는 핸드폰 내부에 존재하는 Sensor를 통해 현재 위치, 가속도, 방향 등을 감지한다. Android studio의 SensorManager를 통해 이 정보들을 가져와서 사용할 수 있고, 다듬어서 원하는 정보로 변형도 가능하다. 예를 들어 가속도와 자기장 센서를 활용하여 나침반을 구현할 수 있다. 별 헤는 밤 앱은 별자리 관광 애플리케이션이지만 별 관측에 직접적으로 도움을 줄 수 있는 서비스가 부족했었다. 그래서 이번 업데이트 때 이 센서 정보를 활용하여 별자리의 방위각과 고도를 찾아줄 수 있는 기능을 추가하기로 했다! 이때 별자리의 고도와 핸드폰의 기울기로 비교해야 하므로 정확히 말하면 핸드폰의 기울기를 구한다고 하는 것이 올바른 표현이다. 직접적으로 방위각과 고도를 계산하.. 2024. 2. 20.
[Firebase Cloud Messaging]Android FCM 적용 개요 및 설명 핸드폰 앱에서 푸시 알림 기능은 기본 중의 기본이다. 댓글 작성 알림, 공지 사항 알림, 업데이트 알림 등등 하나의 앱에서도 날아오는 알림의 종류는 매우 다양하다. 사실 첫 업데이트 때 구현해야 할 만큼 중요한 기능임에도 개발자의 역량 부족으로 1.3v에서 구현하게 되었다…(이렇게 성장하는 거지) 푸시 알림 기능에는 OneSignal, WebSocket 같은 다양한 방법들이 있지만, FCM을 선택하게 되었다. FCM FCM의 정의를 Firebase 공식 문서를 참고하면 다음과 같다. ‘Firebase Cloud Messaging은 메시지를 안정적으로 무료 전송할 수 있는 크로스 플랫폼 메세징 솔루션입니다. ‘ 즉 FCM은 Google Firebase에 등록되어 있는 클라이언트 앱에 푸시 알.. 2024. 1. 21.