본문 바로가기
조그만 기술로 세상을 이롭게/나여기있어

나여기있어 개발 기술 요약

by eplus 2026. 6. 16.

1. 모바일 앱 개발

C# .NET MAUI를 사용해 Android 앱으로 개발했습니다.

주요 적용 기술은 다음과 같습니다.

  • C# 기반 모바일 앱 개발
  • .NET MAUI 화면 구성
  • XAML 기반 UI 설계
  • Android 권한 처리
  • 위치 정보 조회
  • QR 코드 생성 및 스캔
  • 연결코드 기반 폰 연결
  • 로컬 데이터 저장
  • 예외 처리 및 앱 종료 방지 처리

2. 서버 개발

서버는 Python Flask 기반으로 구성했습니다.

주요 기능은 다음과 같습니다.

  • 폰 연결 관리 API
  • QR/연결코드 기반 등록 처리
  • 상태 전송 API
  • 수신 로그 저장
  • PUSH 발송 처리
  • 중복 PUSH 방지
  • 연결된 폰 목록 조회
  • 서버 오류 및 네트워크 예외 처리

3. 데이터베이스

서버 데이터 저장은 MariaDB를 기준으로 사용했습니다.

관리 대상 데이터는 다음과 같습니다.

  • 사용자 기기 정보
  • 폰 연결 정보
  • 상태 전송 로그
  • FCM 토큰 정보
  • 수신 이력 정보

4. PUSH 알림

Firebase Cloud Messaging, FCM을 사용해 상태와 위치 정보를 상대방 폰으로 전달합니다.

적용 내용은 다음과 같습니다.

  • FCM 토큰 등록
  • 상태 전송 시 PUSH 발송
  • 동일 수신자 중복 PUSH 방지
  • 앱 수신 시 중복 로그 저장 방지
  • 알림 클릭 후 앱 화면 연동

5. 위치 및 지도

휴대폰의 위치 정보를 조회하고, 수신된 위치를 지도에 표시하는 기능을 적용했습니다.

주요 기능은 다음과 같습니다.

  • GPS 기반 현재 위치 조회
  • 위도/경도 전송
  • 수신 위치 지도 표시
  • 지도 크게 보기 POPUP
  • 지도 확대/축소 +, - 버튼

6. QR 및 연결코드

폰 연결은 두 가지 방식을 지원합니다.

  • QR 코드 생성
  • 상대 QR 읽기
  • 연결코드 직접 입력
  • 멀리 떨어진 사용자와 코드 기반 연결
  • 쌍방 연결 시 최신 연결 기준 1건만 표시

7. UI/UX 개선

사용자가 쉽게 사용할 수 있도록 화면과 팝업을 정리했습니다.

적용 내용은 다음과 같습니다.

  • 첫 화면 상태 전송 버튼 개선
  • 부드러운 색상 적용
  • 안내 탭 추가
  • 사용법/주의사항 표시
  • 색상 있는 커스텀 POPUP 적용
  • 기본 오류 팝업 제거
  • 지도 확대 POPUP 개선

8. 안정성 보완

앱이 갑자기 종료되지 않도록 예외 처리를 강화했습니다.

보완한 부분은 다음과 같습니다.

  • 네트워크 오류 처리
  • 서버 응답 오류 처리
  • 위치 조회 실패 처리
  • QR 스캔 오류 처리
  • 지도 표시 오류 처리
  • PUSH 수신 중복 방지
  • 로컬 저장 데이터 오류 방어

한 줄 요약

나여기있어는 C# .NET MAUI 앱, Python Flask 서버, MariaDB, FCM PUSH, GPS 위치 정보, QR/연결코드 기능을 결합해 상태와 위치를 간단히 전달하는 안심 연결 앱입니다.

반응형