Overview

기능 정의

로그인 화면

  1. 화면
  • 이메일. 비밀번호 입력 테스트 필드가 있습니다.
  • 로그인, 회원가입 버튼이 있습니다.
  1. 기능
  • 로그인시 서버를 통해 유효성을 체크합니다.

회원가입 화면

  1. 화면
  • 이메일, 비밀번호 입력 및 확인 텍스트 필드가 있습니다.
  1. 기능
  • 전화번호, 이메일 주소 중복 등 서버를 통해 유효성을 체크합니다.

친구 목록 화면

  1. 화면
  • 내 프로필과 친구의 프로필 확인이 가능합니다.
  • 친구 추가 및 초대 관련 플로팅 버튼이 있습니다.
  1. 기능
  • 내 프로필 수정 및 친구의 프로필 확인이 가능합니다.
  • 사진은 gif, webp 지원합니다.
  • 이메일 주소, 전화번호로 친구추가가 가능합니다.
  • 초대장을 전송할 수 있습니다.

내 프로필 화면

  1. 화면
  • 내 프로필 이름, 사진, 상태메시지를 확인할 수 있습니다.
  1. 기능
  • 내 프로필 이름, 사진, 상태메시지를 수정할 수 있습니다.
  • 수정한 내용은 즉각 반영됩니다.

친구 프로필 화면

  1. 화면
  • 친구의 이름, 이메일 주소, 상태메시지를 확인할 수 있습니다.

채팅 목록 화면

  1. 화면
  • 채팅 내역을 볼 수 있습니다.
  • 채팅방의 제목이 있는 경우 제목, 없는 경우 참여자 이름과 참가자 수를 확인할 수 있습니다.
  • 마지막 메시지 수신 시간을 확인할 수 있습니다.
  • 채팅방 생성 관련 플로팅 버튼이 있습니다.
  1. 기능
  • 메시지 수신시 실시간으로 업데이트 합니다.

채팅 화면

  1. 화면
  • 나와 상대방이 보낸 메시지를 확인할 수 있습니다.
  • 이모티콘 수발신이 가능합니다.
  • 이모티콘의 스폰서를 확인할 수 있습니다.
  • 해당 채팅방에서 획득한 포인트를 확인할 수 있습니다.
  • 초대 버튼이 있습니다.
  • 채팅방 수정 버튼이 있습니다.
  • 읽지 않은 수를 카운트 합니다.
  1. 기능
  • 이전 채팅 내역이 존재하는 경우 최근 30개 이하만 읽을 수 있으며, Pull to refresh로 이전 메시지를 30개씩 가져옵니다.
  • 주고 받은 메시지마다 포인트가 쌓입니다.
  • 이모티콘 전송에는 더 많은 포인트가 쌓입니다.
  • 주고 받은 메시지는 Realm에 저장합니다.
  • 스폰서를 클릭하면 스폰서 사이트로 이동합니다.
  • 스폰서 클릭시 포인트가 쌓입니다.
  • 채팅중 새로운 참여자를 초대할 수 있습니다.
  • 채팅방 내용을 수정할 수 있습니다.
  • 이모티콘 샵으로 이동이 가능합니다.
  • 상대방이 메시지를 읽은 경우 카운트를 차감합니다.

보물상자 화면

  1. 화면
  • 지금까지 획득한 포인트를 확인할 수 있습니다.

설정 화면

  1. 화면
  • 알림 스위치가 있습니다.
  • 이모티콘 샵 버튼이 있습니다.
  1. 기능
  • Push 알림을 결정할 수 있습니다.
  • 내가 가진 이모티콘과 샵에 등록된 이모티콘을 비교하고 다운로드 받을 수 있습니다.

사용 라이브러리

  • Alamofire
  • AlamofireImage
  • DeviceKit
  • Firebase/Core
  • Firebase/Messaging
  • Floaty
  • Kingfisher
  • KingfisherWebP
  • OpalImagePicker
  • RealmSwift
  • Starscream
  • SwiftyJSON
  • TextViewWithThreshHoldFrame