Coder Social home page Coder Social logo

breaking-android's Introduction

"모두가 기자가 된다"


Introduce

여러 언론사에 제보하는게 불편하신가요?
빠르게 내가 제보한 언론이 퍼졌으면 좋겠나요?
제보를 퍼올때 너무 오랜시간동안 허가를 기다려야 하나요?
낮은 기사화로 제보하는게 지치셨나요?

그런 당신을 위한 플랫폼 Breaking

1. SNS 기능

메인 페이지 로그인 페이지 회원가입 페이지
업로드 페이지 게시글 페이지 프로필 페이지
검색 팔로우/팔로잉

2. 제보 구매/판매 기능

제보 구매완료 입출금 페이지 제보 구매/판매로 인한 소득

Members

Android Android
신승건(머쓱) 박태현(돌망이)

Team Goals

  • View 코드와 Controller 로직 분리
  • 기능 모듈화 및 함수화
  • 철저한 주석
  • 빠른 기능 구현보다는 효율적인 아키텍처와 클린코드를 통한 유지보수성 향상
  • 모든 코드 이해하기 & 협력
  • Async 요청에 따른 View 처리

breaking-android's People

Contributors

seunggun avatar taehyuny avatar

Stargazers

 avatar  avatar  avatar

breaking-android's Issues

Implement main feed detail

상세 내용

  • 메인 피드의 각 아이템 팝업 메뉴 구현하기
  • 메인 피드 요청에 따른 예외처리하기
  • 좋아요 수, 댓글 수 천단위 이상 시 텍스트 처리하기

implement layouts as skeleton UI

상세 내용

  • 메인 피드 스켈레톤 UI로 수정하기
  • 팔로우 리스트 스켈레톤 UI로 수정하기
    유저 페이지 스켈레톤 UI로 수정하기(이미지 비율 때문에 하려고 했으나 해결해서 제외)

Implement Exception View handling for google login

상세 내용

  • 구글 로그인 시 발생하는 모든 예외 상황(if/else, try/catch)에 대해 사용자에게 보여지는 처리 구현(Toast, AlertDialog 등등)
  • 로딩 Indicator 구현(Custom ProgressBar)

Implement Post Item Layout

상세 내용

  • 메인 피드, 유저 페이지에 보여줄 게시글 리스트의 각 아이템에 대한 레이아웃 디자인

Implement Editing User Profile

상세 내용

  • 프로필 편집 버튼 클릭 시, 프로필 편집 페이지 이동 및 UI 구성
  • 편집 기능 구현 후, 유저 페이지에 반영하기

Implement Following & Follower List

상세 내용

  • 유저 프로필에서 팔로워 클릭 시 팔로워 리스트 팝업 표시
  • 유저 프로필에서 팔로잉 클릭 시 팔로잉 리스트 팝업 표시
  • 각 리스트에서 유저 클릭 시, 유저 페이지로 이동 및 정보 보여주기

Implement request for getting post data

상세 내용

  • 필터 & 정렬 옵션 구현하기(요청 및 버튼 동작 이벤트)
  • cursor & size 파라미터에 의한 동적 리스트 구현하기
  • 메인 피드 요청 코드 모듈화

Implement request for sign-up

상세 내용

  • 각 필드의 값과 이미지를 받는 회원가입 요청 함수 만들기
  • 응답으로 받아온 Jwt 토큰 로컬에 저장
  • Jwt 토큰으로 유저 정보 가져오기
  • 재 로그인 시, 자동 로그인을 위한 Jwt 토큰 검증 요청하기

Fix App Connection with Main Page without login

상세 내용

  • Splash 페이지에서 로그인 여부 관계 없이 메인 피드로 이동
  • 이미 로그인된 경우가 아니라면 마이페이지 이동 시, 로그인 페이지로 이동 or 로그인 안내 필요한 마이페이지 생성
  • 임의의 페이지에서 로그인이 필요한 서비스에 접근한 경우 로그인 페이지 및 회원가입 페이지로 이동 후, 처리하고 다시 되돌아오기(은 실패해서 우선 메인으로 이동하는 것으로 절충)

Fix User Page in dynamic

상세 내용

  • 마이페이지에 사용된 유저 레이아웃을 재활용하여 다른 유저 페이지 구현
  • 다른 유저의 팔로우/언팔로우, 팔로우 & 팔로워 리스트 보여주기

Implement feed search function

상세 내용

  • 메인 피드에서 문자열 검색 기능 구현 (검색 페이지 따로 할지 검색창에서 바로할지 고민 중)
  • 메인 피드에서 해시태그 검색 기능 구현
    해시태그 검색 기능 구현에 따른 해시태그 chip list 구현 (필요 x)
  • 유저 검색 기능

Implement Posting field processing

상세 내용

  • 제보 이미지/영상 처리
  • 제보 발생 시간 처리
  • 위치 처리
  • 제보 내용 처리
  • 제보 가격 처리
  • 약간의 검증 처리 필요

Study kotlin Until chapter 4~7

  • 4장 : 프로그램의 흐름 제어
  • 5장 : 클래스와 객체
  • 6장 : 프로퍼티와 초기화
  • 7장 : 다양한 클래스와 인터페이스

Implement Token Handling

상세 내용

  • 로그인/회원가입/토큰 재발급 시, 안드로이드의 User-Agent 값 헤더로 보내기
  • 로그인 & 회원가입 시 응답의 헤더로부터 받은 refresh token을 로컬에 저장하기
  • 토큰이 필요한 요청에 대해 로컬에 저장한 엑세스 토큰 만료에 대한 예외처리 하기

fix handling variety of response case on google login

버그 발생 내용

구글 로그인에서 access token과 id token을 토대로 백엔드 서버에 로그인 요청을 하는 것인데, 최초로 요청한 응답에 대한 DTO 클래스(회원가입이 필요한 유저의 경우에 대한 응답)를 만들어뒀는데, 기존 유저가 로그인 요청을 했을 때의 경우에 대해서는 응답이 다르기 때문에 맵핑 에러가 발생한다.

버그 발생 트리거

기존 유저가 구글 로그인을 시도할 때 발생

수정 후 기대 사항

경우의 수가 여러가지인 응답에 대한 처리를 유연하게 함으로써, 맵핑 에러 방지

Fix Feed Empty List Handling

버그 발생 내용

  • 리스트의 인덱스 문제로 에러가 발생한다.

버그 발생 트리거

  • 피드 컨텐츠가 한개도 없을 시에 스크롤 이벤트 시 에러가 발생한다.

수정 후 기대 사항

  • 비어있는 리스트 처리와 예외처리를 통해 비어있는 경우에 대한 스크롤 이벤트를 방지한다.

Fix middle layout of user page

상세 내용

  • 제보 글 버튼 디자인 변경
  • 버튼에 따른 GridView 위젯을 각각 탭으로 변경 후 슬라이드 형식으로 바꾸기

Implement video processing about posting

상세 내용

  • reqeustBody에 담을 binany형식에 알맞게 비디오 변환하기 (video convert to binary)
  • mediaList에 이미지와 영상을 같이 담기

Implement view (Main page)

상세 내용

  • 메인 피드(fragment) xml 구현
  • 피드 데이터 가져와서 리스트에 보여주기

Implement Validate request sign-up field

상세 내용

  • 닉네임 중복 체크
  • 전화번호 중복&형식 체크
  • 이메일 중복&형식 체크
  • 응답값 받아와서 에러 텍스트 핸들러 처리

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.