Giter Club home page Giter Club logo

privacy-of-animal's Introduction

동물의 사생활

소개

동물의 사생활은 동물 프로필 기반의 반 익명 채팅 어플리케이션입니다. 반 익명이라 함은 완전한 익명도 아니고 사용자의 얼굴을 드러내는 것도 아니라는 뜻입니다. 이런 목적의 채팅 어플리케이션을 기획한 이유는 현재 채팅 앱이 랜덤채팅과 소개팅 앱으로 구분되는데 랜덤채팅은 완전한 익명성이라 안좋은 목적으로 사용되는 경우가 많고 소개팅 앱은 목적자체가 소개팅일 뿐더러 외모의 가중치가 높기 때문에 단순한 채팅을 하되 제대로된 채팅을 하게 해주기 위함입니다.

요구조건

친구신청

  • 스트림을 통한 UI 업데이트 시점 📱

    • 상대방이 친구신청을 한 경우 ✔️
    • 상대방이 친구신청을 취소한 경우 ✔️
    • 자신이 친구신청을 삭제한 경우 ✔️
    • 자신이 친구신청을 수락한 경우 ✔️
  • **친구신청 수락 (자신이 수락한 경우) **

    • 서버에서 상대방의 친구목록 업데이트 ✔️
    • 서버에서 친구와의 채팅방 초기화 ✔️
    • 서버에서 자신의 친구목록 업데이트 ✔️
    • 서버에서 자신의 친구신청 목록 업데이트 ✔️
    • 로컬에서 자신의 친구목록 업데이트 ✔️
    • 로컬에서 자신의 친구신청 목록에서 제거 ✔️
    • 로컬에서 친구와의 채팅방 초기화 ✔️
    • 로컬에서 친구와의 채팅 알림 초기화 ✔️
      • 로컬 변수 초기화 (CurrentUser)
      • SharedPreferences 값 초기화
  • 친구신청 수락 (수락당한 경우)

    • 로컬에서 자신의 친구목록 업데이트 ✔️
    • 로컬에서 자신의 친구신청 목록에서 제거 ✔️
    • 로컬에서 친구와의 채팅방 초기화 ✔️
    • 로컬에서 친구와의 채팅 알림 초기화 ✔️
  • 친구신청 삭제 (자신이 삭제한 경우)

    • 서버에서 자신의 친구신청 목록에서 제거 ✔️
    • 로컬에서 자신의 친구신청 목록에서 제거 ✔️
  • 친구신청 삭제 (삭제당한 경우)

    • 로컬에서 자신의 친구신청 목록에서 제거 ✔️

친구

  • 스트림을 통한 UI 업데이트 시점 📱
    • 상대방이 친구 신청을 수락한 경우
    • 상대방이 친구를 차단한 경우
    • 자신이 친구를 차단한 경우
  • 친구와의 채팅
    • 이미 채팅방이 만들어져 있으므로 채팅화면으로 이동 ✔️
  • 친구 차단 (자신이 차단한 경우)
    • 서버에서 자신의 친구목록에서 제거 ✔️
    • 서버에서 상대방의 친구목록에서 제거 ✔️
    • 서버에서 모든 채팅내용 제거 ✔️
    • 서버에서 모든 채팅방 제거 ✔️
    • 로컬에서 자신의 친구목록에서 제거 ✔️
    • 로컬에서 모든 채팅내용 제거 ✔️
    • 로컬에서 모든 채팅방 제거 ✔️
    • 로컬에서 모든 채팅방 알림 제거 ✔️
  • 친구 차단 (차단당한 경우)
    • 로컬에서 자신의 친구목록에서 제거 ✔️
    • 로컬에서 모든 채팅내용 제거 ✔️
    • 로컬에서 모든 채팅방 제거 ✔️
    • 로컬에서 모든 채팅방 알림 제거 ✔️

매칭

  • 친구 신청 (자신이 신청한 경우)
    • 서버에서 해당 사용자에게 친구신청
    • 로컬에서 친구신청 플래그 활성화
  • 친구 신청 (자신이 받은 경우)
    • 로컬에서

privacy-of-animal's People

Contributors

mangorabbin avatar zerominjeon avatar baeharam avatar 181202309 avatar

Watchers

James Cloos avatar

Forkers

zerominjeon

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.