동물의 사생활은 동물 프로필 기반의 반 익명 채팅 어플리케이션입니다. 반 익명이라 함은 완전한 익명도 아니고 사용자의 얼굴을 드러내는 것도 아니라는 뜻입니다. 이런 목적의 채팅 어플리케이션을 기획한 이유는 현재 채팅 앱이 랜덤채팅과 소개팅 앱으로 구분되는데 랜덤채팅은 완전한 익명성이라 안좋은 목적으로 사용되는 경우가 많고 소개팅 앱은 목적자체가 소개팅일 뿐더러 외모의 가중치가 높기 때문에 단순한 채팅을 하되 제대로된 채팅을 하게 해주기 위함입니다.
-
스트림을 통한 UI 업데이트 시점 📱
- 상대방이 친구신청을 한 경우 ✔️
- 상대방이 친구신청을 취소한 경우 ✔️
- 자신이 친구신청을 삭제한 경우 ✔️
- 자신이 친구신청을 수락한 경우 ✔️
-
**친구신청 수락 (자신이 수락한 경우) **
- 서버에서 상대방의 친구목록 업데이트 ✔️
- 서버에서 친구와의 채팅방 초기화 ✔️
- 서버에서 자신의 친구목록 업데이트 ✔️
- 서버에서 자신의 친구신청 목록 업데이트 ✔️
- 로컬에서 자신의 친구목록 업데이트 ✔️
- 로컬에서 자신의 친구신청 목록에서 제거 ✔️
- 로컬에서 친구와의 채팅방 초기화 ✔️
- 로컬에서 친구와의 채팅 알림 초기화 ✔️
- 로컬 변수 초기화 (CurrentUser)
- SharedPreferences 값 초기화
-
친구신청 수락 (수락당한 경우)
- 로컬에서 자신의 친구목록 업데이트 ✔️
- 로컬에서 자신의 친구신청 목록에서 제거 ✔️
- 로컬에서 친구와의 채팅방 초기화 ✔️
- 로컬에서 친구와의 채팅 알림 초기화 ✔️
-
친구신청 삭제 (자신이 삭제한 경우)
- 서버에서 자신의 친구신청 목록에서 제거 ✔️
- 로컬에서 자신의 친구신청 목록에서 제거 ✔️
-
친구신청 삭제 (삭제당한 경우)
- 로컬에서 자신의 친구신청 목록에서 제거 ✔️
- 스트림을 통한 UI 업데이트 시점 📱
- 상대방이 친구 신청을 수락한 경우
- 상대방이 친구를 차단한 경우
- 자신이 친구를 차단한 경우
- 친구와의 채팅
- 이미 채팅방이 만들어져 있으므로 채팅화면으로 이동 ✔️
- 친구 차단 (자신이 차단한 경우)
- 서버에서 자신의 친구목록에서 제거 ✔️
- 서버에서 상대방의 친구목록에서 제거 ✔️
- 서버에서 모든 채팅내용 제거 ✔️
- 서버에서 모든 채팅방 제거 ✔️
- 로컬에서 자신의 친구목록에서 제거 ✔️
- 로컬에서 모든 채팅내용 제거 ✔️
- 로컬에서 모든 채팅방 제거 ✔️
- 로컬에서 모든 채팅방 알림 제거 ✔️
- 친구 차단 (차단당한 경우)
- 로컬에서 자신의 친구목록에서 제거 ✔️
- 로컬에서 모든 채팅내용 제거 ✔️
- 로컬에서 모든 채팅방 제거 ✔️
- 로컬에서 모든 채팅방 알림 제거 ✔️
- 친구 신청 (자신이 신청한 경우)
- 서버에서 해당 사용자에게 친구신청
- 로컬에서 친구신청 플래그 활성화
- 친구 신청 (자신이 받은 경우)
- 로컬에서