My second android sns application. This application is progressed version compared with android sns 1.0 application.
해당 프로잭트는 android sns 1.0 application 프로잭트보다 더 진화된 SNS 애플리케이션 입니다. 서버를 도입하여 다른 사용자들과 소통할 수 있도록 구현했습니다.
언어: java, php, javascript
프로토콜: HTTP, TCP/IP, WebRTC
서버 호스팅: AWS EC2
서버 운영체제: Ubuntu
서버 프로그램: Apache2, socket server, signaling server(node.js socket.io)
데이터베이스: MySQL
라이브러리: Glide, Retrofit2, Gson, ExoPlayer2, FCM, TedImagePicker, TedBottomPicker, TedPermission...
- 회원가입시 항목의 유효성을 실시간으로 검사하여 피드백 제공
- 이메일 인증 요구
- 한 번 로그인을 하면 자동 로그인
- 사용자들이 업로드한 게시물들을 볼 수 있는 페이지
- 게시물은 이미지나 동영상으로 구성
- 동영상 게시물의 경우 화면 터치를 통한 소리 on/off 가능
- 페이징 처리를 하여 최하단으로 내려가면 다음 게시물 로딩.
- 개별 사용자의 정보를 모아둔 페이지
- 사용자가 업로드한 게시물에 대해 격자형, 수직 나열형 보기 방식 제공
- 팔로잉/팔로워를 확인할 수 있으며 팔로잉 유저나 팔로워의 페이지 방문 가능
- 프로필 수정을 통해 프로필 사진, 닉네임, 이름, 소개와 같은 항목 수정 가능
- 이미지 업로드의 경우 이미지 선택 후에도 이미지 순서나 구성 편집 가능
- 장소 등록 가능
- 동영상 업로드의 경우 동영상 선택 후에도 다른 동영상 선택 가능
- 게시물 수정/삭제 가능
- 게시물에 댓글 추가/수정/삭제
- 게시물에 대댓글 추가/수정/삭제
- 좋아요를 통해 게시물에 대한 호감 표시 기능
- 좋아요 리스트에서 좋아요를 누른 사용자들을 확인하고 페이지에 방문 가능
- 다른 사용자 팔로우/언팔로우 기능
- 마이페이지에서 팔로잉, 팔로워 목록 확인
- 특정 키워드의 해시태그가 달린 게시물들만 모아서 조회 가능
- 사용자, 태그, 장소를 필터로 검색 가능
- 검색어가 일부 문자열만 포함해도 모두 조회
- 사용자 검색의 경우 이름이나 닉네임으로 검색
- 태그 검색을 통해서 해당 태그가 달린 게시물 조회
- 장소 검색을 통해 검색된 장소에서 업로드된 게시물 조회
- '주변 게시물'의 경우 해당 장소의 주변에서 업로드된 게시물을 모아서 출력(주변 거리 설정 가능)
- 1:1채팅, 단체 채팅 가능
- 전송 가능한 메세지 컨텐츠: 텍스트, 이미지, 동영상
- 채팅방 생성 후 사용자 초대 가능
- 메세지를 확인하지 않은 인원수 표시
- 채팅방에서 공유된 이미지, 동영상들을 모아서 볼 수 있는 서랍 기능
- 채팅방 서랍에서 복수의 이미지와 동영상 다운로드 가능
- 전/후면 카메라의 전환 가능
- 앱에서 벗어나는 경우 상대방에게 피드백 전달과 함께 화면 스트리밍 중단(상대방이 돌아오면 다시 스트리밍 시작)
- 음소거 기능
- 알림 종류: 좋아요, 팔로우, 댓글(대댓글), 채팅
- 어플을 실행중일 때 알림이 오는 경우 화면에 표시
- 어플을 실행중이지 않을 때 알림이 오는 경우 푸시 알림이 오게 되고 해당 알림 클릭시 알림을 유발한 컨텐츠 확인 가능