AOS 알람공유 앱, Notishare
안드로이드 기기에서 발생한 알람을 공유하는 애플리케이션
- 서비스 링크: 개인정보 이슈로 배포 실패
- 22.09 ~ 22.12
- 3인 안드로이드 개발
📌 Intro
개발동기
- 애플 생태계에서의 “아이폰 ↔ 맥북 ↔ 아이패드” 끼리 알람이 공유되는 것을 경험
- 갤럭시 폴드로 기기변경 후, 알람 공유가 안되어 중요한 연락을 종종 놓쳤음
담당업무
- 사용자인터페이스 수업의 프로젝트 팀장
- 각종 문서 작성 및 PT 담당
- 메인 페이지 및 BE영역 서버리스 개발 책임
주요성과
- 당시 수업의 프로젝트 점수 1위 및 전체 종합 성적 A+ 수료
📌 Dev
기획
프로젝트 간략 소개
- 안드로이드 생태계에서도 “애플 생태계”처럼 기기간 알람을 공유할 수 있는 앱을 제작
📌 What I Did
기획 및 디자인
- 프로젝트 아이디어 초안 제시
- 팀원들과 함께 프로젝트 기술 스택 선정 및 구현 가능성 조사
- 팀원들과 함께 데이터베이스 구조 설계
- 주차 보고서 추합 및 정리 제출
- 팀원들과 함께 디자인 담당
- BottomModal 컴포넌트, 그룹 공유 모달
- 초기 그룹 설정 페이지, 그룹 생성 페이지, 그룹 참여 페이지
개발
- Android
- [홈 페이지] 홈 페이지 UI구성
- [홈 페이지] Firestore와 데이터 fetching구현
- [홈 페이지] 리사이클러 뷰 구현
- [홈 페이지] 에러 및 예외 처리 화면/로직 구현
- [홈 페이지] 사용자가 참여한 방의 정보와 미리보기 뷰 구현
- [홈 페이지] 각종 액티비티와 인텐트 연결
- [알림 상세] UI 구성 보조
- [알림 상세] 각종 모달 연결
- [알림 상세] 다이나믹 링크 생성 및 로직 구현
- [QR 코드] 전달 받은 QR이미지에서 URL 쿼리 값을 통해서 그룹 ID 값 파싱
- [공유 모달] UI 구성
- [공유 모달] BottomSheetDialog API 활용한 공유 기능 구현
- [공유 모달] 그룹 정보가 담긴 QR 코드 생성
- [공유 모달] ShareSheet API를 활용하여 Native에서 제공하는 공유 기능 활용
- Firestore
- FCM 토큰, 참여 그룹 정보, 기기 정보 등의 CRUD
- 여러 기기들에서 수신되는 알람 정보 저장
- Dynamic Link
- 다이나믹 링크를 활용한 앱 실행/설치 분기 처리 구현
- 다이나믹 링크로 앱이 실행된 경우, 그룹 ID 정보 파싱 구현
- Cloud Function
- Firestore에 의해 트리거되어, 알람 공유 그룹에 유저의 변동 사항에 따라 FCM 발송
- Firestore에 의해 트리거되어, 해당 기기가 속한 그룹에 알람 정보를 기기들에게 FCM으로 발송
📌 Outcome
과제 최종 보고서
프로젝트 시연 영상
스크린샷