권한_확인_및_GPS_상태_검사_로직_위치_변경 - boostcampwm-2024/and04-Nature-Album GitHub Wiki
권한 확인 및 GPS 상태 검사 로직 위치 변경
💡문제 해결 과정 기록
권한 확인 및 GPS 상태 검사 로직을 MainActivity에서 HomeScreen으로
처음에는 HomeScreen이 UI만 담당하고 권한 확인과 GPS 검사는 MainActivity에서 처리해야 한다고 생각했습니다. 그러나 해당 로직이 오직 HomeScreen에서만 필요하여 HomeScreen 내부로 옮기게 되었습니다.
이 과정에서 HomeScreen의 코드가 길어지는 것을 방지하기 위해 PermissionHandler와 GPSHandler를 각각 생성하였고, HomeScreen에서는 각 Handler에 람다 함수 형태로 값을 전달해주었습니다.
검사가 끝나면 Handler는 전달받은 람다 함수를 호출하여 카메라 실행 같은 핵심 동작을 HomeScreen에서 수행하도록 합니다. 이렇게 구현함으로써 핵심 동작(HomeScreen에서 카메라 실행)과 이를 위한 세부 동작(Handler에서의 권한, GPS 검사)을 명확히 분리하여 책임이 더 뚜렷하게 구분된 것 같습니다.