Skip to content

CareDirection/CareDirection-iOS

Repository files navigation

CareDirection-iOS

Self Care. 방향성을 제시하다.

🚩 서비스 work flow

🚩 앱 아이콘


🚩 실행화면 스크린 캡쳐

  1. 로그인/회원가입/사용자 정보 수정

스크린샷 2020-01-03 오후 4 43 27스크린샷 2020-01-03 오후 4 44 12스크린샷 2020-01-03 오후 6 31 33스크린샷 2020-01-03 오후 6 31 36

  1. 설문조사 / 복용제품 등록

스크린샷 2020-01-03 오후 4 44 24스크린샷 2020-01-03 오후 4 49 53스크린샷 2020-01-03 오후 4 50 01스크린샷 2020-01-03 오후 4 50 14스크린샷 2020-01-03 오후 4 50 19스크린샷 2020-01-03 오후 4 50 24스크린샷 2020-01-03 오후 4 50 28스크린샷 2020-01-03 오후 4 50 38스크린샷 2020-01-03 오후 4 51 52스크린샷 2020-01-03 오후 4 51 55스크린샷 2020-01-03 오후 4 52 08

  1. 홈 화면

스크린샷 2020-01-03 오후 6 30 28스크린샷 2020-01-03 오후 6 30 47스크린샷 2020-01-03 오후 6 33 27스크린샷 2020-01-03 오후 6 33 35스크린샷 2020-01-03 오후 6 33 30

3-1. 기준 상세

스크린샷 2020-01-03 오후 6 30 33

3-2. 기능 상세

스크린샷 2020-01-03 오후 6 30 41

3-3. 복용중인 제품

스크린샷 2020-01-03 오후 6 30 51

  1. 제품 / 제품 검색 / 제품 상세

KakaoTalk_Photo_2020-01-03-18-44-27KakaoTalk_Photo_2020-01-03-18-44-47KakaoTalk_Photo_2020-01-03-18-44-51KakaoTalk_Photo_2020-01-03-19-47-48

  1. 성분 학습

스크린샷 2020-01-03 오후 6 30 58스크린샷 2020-01-03 오후 6 31 10스크린샷 2020-01-03 오후 6 31 22스크린샷 2020-01-03 오후 6 31 02



🚩 개발 환경 및 사용한 라이브러리

개발 환경

  • [Xcode] : xcode와 swift를 사용해 개발

라이브러리

  • [Alamofire] : 통신 라이브러리

  • [Kingfisher] : 통신 라이브러리 (이미지)

  • [Hero] : 뷰 전환 애니메이션

  • [Macaw] : chart view 구현을 위한 애니메이션 라이브러리



🚩 기능 소개 (기능, 개발여부, 기타 사항)

주혁 : 설문조사, 복용제품 등록/관리, 제품 탭 기능 담당
재은 : 로그인/회원가입, 메인 탭, 성분학습 탭 기능 담당
기능 개발 여부 기타 사항
로그인 / 회원가입
설문조사
복용 중인 제품 등록
기준 상세 그래프
기준 상세 개별 그래프
기능성 원료
상세 기능성 , 케어 받는 기능
복용 관리
복용 상세 관리 (스케줄 관리) 푸시 알림 기능 구현 못함(개발자 계정 없음)
사용자 추가
사용자 설정 x 후 순위 기능, 팝업 안내까지는 구현 완료
제품 안내하기
제품 상세 안내하기
제품 검색
제품별 기준 안내하기(기준 선정 이유 안내)
제품 안내 필터링하기 x 후 순위 기능
성분 학습
성분 학습 상세 안내하기
성분 학습 증상별 안내하기
성분 학습 아티클


🚩 문제점과 해결방안 report

  1. UIScrollView

    scroll view 에서 bottom 에 계속 여백 공간이 남았음. auto layout 문제인줄 알았으나 해당 view controller 에 scroll view를 outlet 변수로 지정해두고 scroll view edge inset을 지정해뒀었음. (아직도 왜 그랬는지는 의문임.😂)

    스크린샷 2020-01-03 오후 7 33 04
  2. Pod

    cocoapod, library 버전을 다 맞추고 pod 을 설치했는데도 다른 개발자가 pull 을 받았을 때 자꾸 pod 을 새로 install 해야하는 문제가 있었음. 확인해보니 project 파일에 pod 을 install 한 후 .gitignore 을 설치한 것이 문제였던 것 같음.

    스크린샷 2020-01-03 오후 7 24 19
  3. 304 Error

    통신에서 서버에 요청한 데이터는 잘 들어오는데 클라단에서 요청한 부분이 304 로 들어오는 문제가 있었음. 찾아본 결과 JSON 자체에서 요청 값을 받아올 때 캐싱하는 쪽에 설정이 필요했음. 서버 측에서 해결-!

  4. Tab Gesture Recognize

    Problem : 화면의 다른 곳을 tab 했을 시 keyboard 가 내려가도록하는 UIGesturreRecognizerDelegate를 지정했지만 같은 뷰에 있는 table view와 collection view 의 cell 들이 클릭되지 않는 문제 발생.

    Solution : 아래와 같이 initGestureRecognizer 함수에서 .cancleTouchesInView 를 false 값으로 설정하니 키보드도 잘 내려가면서 다른 뷰들의 tab도 잘 인식됨.

    스크린샷 2020-01-03 오후 7 36 00
  5. Query String

    Problem: 서버측에 요청해야하는 key 값이 아래 API 문서에 나와있는 것처럼 query 였음. query string 을 요청해본 적이 없어 어떻게 해야하는지 고민함.

    스크린샷 2020-01-03 오후 7 19 21

    Solution: 아래와 같이 parameter에 요청할 query string 을 담아 보내고 encoding 을 URLEncoding.queryString 으로 작성해주니 문제 없이 통신 성공함.

    스크린샷 2020-01-03 오후 7 28 31
  6. +) 추후 수정해보고 싶은 부분 : Status Handling

    현재은 아래와 같이 status를 각각 처리해주고 있지만 (ex: 200, 201, 204 다 따로 따로) 함께한 다른 팀원이 모든 케이스 별로 status를 처리하지 맑고 1xx, 2xx, 3xx 등 같은 백번대끼리 묶어서 핸들링하는게 더 좋다고 들어 수정해보고 싶음.

    스크린샷 2020-01-03 오후 7 35 03


👩🏻‍💻 팀원소개 👨🏻‍💻

  • 안재은

SOPT 25기 APPJAM 에서 Care Direction iOS 개발 파트원으로 임했습니다! 이번 앱잼도 좋은 팀원들과 함께 할 수 있어 행복합니다! (하지만 역시나 2주 밤샘은 힘들다..)

  • 이주혁

25기 YB CareDirection에서 재은이 수발을 맡은 이주혁입니다 ^ㅇ^