Skip to content
forked from anfgbwl/Youfilx

내일배움캠프 iOS 앱개발 숙련 프로젝트

Notifications You must be signed in to change notification settings

angwoo0503/Youfilx

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

nbcamp-Project-YOUFLIX

[내일배움캠프 iOS트랙] 9주차 팀과제/iOS 앱개발 숙련 프로젝트 - 유튜브 영상 앱 만들기(API 활용)



🧑🏻‍💻 프로젝트 소개

"유튜브 앱 프로젝트"

이 프로젝트는 Swift 언어를 사용하여 Xcode에서 개발한 애플리케이션입니다.
이 앱은 유튜브 API를 활용하여 만든 동영상 스트리밍 애플리케이션입니다. 사용자는 회원가입 및 로그인을 통해 앱을 이용할 수 있으며, 다양한 기능과 사용자 경험을 제공합니다.

  1. 홈 화면: 최신 동영상을 무한 스크롤로 탐색하세요.
  2. 검색 화면: 원하는 동영상을 빠르게 찾을 수 있습니다.
  3. 디테일 페이지: 동영상을 자세히 살펴보고 댓글을 남기며 찜하기 및 재생 기록 저장 기능을 활용하세요.
  4. 마이페이지: 회원 정보를 관리하고 개인 설정을 수정하세요.

이 앱은 쉽고 편리한 사용자 경험을 제공하며, 유튜브 동영상을 더욱 흥미롭게 즐길 수 있도록 도와줍니다. 지금 바로 다운로드하여 다양한 동영상을 탐험해보세요!

프로젝트 관련 문서 - 🔗 삼인조(3조) Youflix



🛠️ 사용한 기술 스택 (Tech Stack)



🗓️ 개발 기간

  • 2023-09-04(월) ~ 2023-09-09(토), 6일간



💁🏻 개발자



📌 주요 기능

회원가입 및 로그인

  • 회원가입 및 로그인은 간단하게 이루어집니다.
  • 사용자는 닉네임을 랜덤으로 설정하고, 이메일 주소와 비밀번호를 입력하여 가입할 수 있습니다.
  • 이메일 주소와 비밀번호는 정규식을 통해 유효성을 검증합니다.

홈 화면

  • 홈 화면에서는 유튜브 API를 통해 인기 동영상의 목록을 표시합니다.
  • 사용자가 스크롤을 내리면 다음 페이지의 데이터를 로드하여 무한 스크롤을 지원합니다.

검색 화면

  • 검색 기능을 통해 사용자가 원하는 동영상을 찾을 수 있습니다.
  • 검색 결과를 클릭하면 해당 동영상의 디테일 페이지로 이동할 수 있습니다.

디테일 페이지

  • 디테일 페이지에서는 선택한 동영상의 정보를 표시합니다.
  • 댓글 기능을 제공하며, 현재 페이지에 있는 댓글을 로드합니다.
  • 사용자는 동영상을 찜하기 할 수 있고, 재생 기록을 저장할 수 있습니다.

마이페이지

  • 마이페이지에서는 사용자의 회원 정보를 확인하고 수정할 수 있습니다.
  • 찜한 동영상과 시청기록을 확인할 수 있습니다.

이 앱은 유튜브 동영상을 효과적으로 탐색하고 관리할 수 있는 기능을 제공하여 사용자에게 편리한 유튜브 스트리밍 경험을 제공합니다. 무한 스크롤과 검색 기능은 사용자가 원하는 동영상을 쉽게 찾을 수 있도록 도와주며, 찜하기 및 재생 기록 저장과 같은 기능은 사용자가 동영상을 즐기는 데 도움을 줍니다. 또한, 회원가입과 로그인을 통해 개인화된 경험을 제공하고, 마이페이지에서는 사용자 정보를 관리할 수 있습니다.



🧐 앱 실행 및 사용 방법

‎앱실행화면(배경삭제) 앱 가이드 영상 : Youflix



💥 트러블 슈팅

  • 다음 페이지를 토큰을 계속해서 여러번 호출하는 문제로 인해 중복 동영상 생성
    API를 로드하는 로직에 isLoadingData라는 Bool 형태의 프로퍼티를 생성하여,
    한 페이지에서 데이터를 가져올 동안에 다시 로드할 수 없게끔 처리함
    
  • 시청기록 동영상들의 순서가 바뀌며 중복된 동영상들이 출력
    비동기적으로 처리하여 콜렉션 뷰에 동영상들이 순서대로 출력되지 않아,
    로딩 시간이 걸리더라도 동기적으로 처리해 시청기록 동영상들의 순서를 정렬함
    

About

내일배움캠프 iOS 앱개발 숙련 프로젝트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 99.3%
  • HTML 0.7%