GithubHelp home page GithubHelp logo

hakzzang / burnout Goto Github PK

View Code? Open in Web Editor NEW
12.0 3.0 3.0 28.56 MB

그냥 아무것도 하기 싫을 때, 앱을 통해서 '성취감을 줄 수 있지 않을까?'로 시작하는 오픈소스

License: GNU General Public License v3.0

Kotlin 100.00%
android dagger2 hilt burnout jetpack mvvm

burnout's Introduction

Burnout Challenge 🧯

Android11 Wiki Last Commit

번아웃을 재미있게 해결해보고자, 멘탈을 건강하게 하는 Health를 주제로 프로젝트를 진행합니다.
안드로이드11 끝장개발대회 참여 프로젝트입니다.


👆👆

번아웃_챌린지 발표자료

About

🔥 팀 HBS

  • 문병학
    ✔️ AAC, Jetpack, Coroutine, Material Design
    ✔️ 채팅 UI, 기능 개발

  • 조희영
    ✔️ TF Lite, CameraX, Sketch Library
    ✔️ 미션 화면 UI, 기능 개발

  • 이홍주
    ✔️ ScopedStorage,
    ✔️ 미션 결과 UI, 기능 개발

💡 특징

  • 프로젝트는 다크테마와 가로모드를 고려했습니다 🌗
  • 프로젝트는 머터리얼 트랜지션을 고려했고, 머터리얼 디자인 뷰를 사용했습니다 ✏️
  • 프로젝트는 Dagger2-Hilt를 사용했습니다 🗡️

🌱 Android 11

  • 안드로이드 Bubble을 통한 채팅 시스템을 고려하고 있습니다 🧼
  • 안드로이드에서 제공하는 최신 Jetpack Library를 사용하고 있습니다 🚄

⚽ 목표

  • 인공지능을 통한 새판별기를 구현하려고 합니다 🐤
  • 채팅 UI 기반의 게임을 구현하려고 합니다 💬
  • SNS 챌린지를 만드는 앱을 구현하려고 합니다 💪

Schedule

date

Week 1

0. 프로젝트 개요

이 앱은 좋아하는 유튜브 bj가 어느날 삶이 정말 재미없어졌을 때, 문득 색안경을 사러 안경점에 갔다고 합니다. 안경점에서 색안경을 사고 난 후에, 색안경을 끼고 이곳 저곳 돌아다니다보니, 뭔가 다른 시야를 얻게 되었다는 경험을 했습니다. 이러한 경험을 앱을 통해서 제공하면 의미있을 것이라고 생각을 했습니다. 그래서 저희는 멘탈케어를 할 수 있는 번아웃 챌린지 앱을 생각하게 되었습니다. 번아웃 챌린지 앱은 ‘아무 의미 없는 미션’(사진 찍기, 그림 그리기) 등의 미션을 수행하고, 이것을 클리어 함을 통해서 특별한 의미를 제공해주고자 했고, 앱은 대화형 UI/UX 의 구조를 갖고 있으며, 카메라, 지도 등을 사용합니다.

1. 프로젝트 소개

실제 앱에서는 10개, version 1.0을 기준으로 제출할 때는 3개의 미션을 기준으로 합니다. 모든 미션을 클리어했다는 내용과 함께 ‘앱의 마지막’을 보여줌을 통해서, 번아웃과 관련된 멘탈치료를 할 수 있도록 돕고자 하는 취지가 있습니다.

메인 화면 : 미션 실행 -> 미션 진행(대화형 UI/UX 구조) 미션 화면 : 미션은 그림 그리기, 옆 사람 때리기, 새 사진 찍기 등의 미션으로 되어 있음->
미션을 클리어 하게 되면, 미션을 완료했다는 것을 SNS에 공유하는 기능이 있어야 함 카메라 미션 화면 : 카메라 미션은 사진을 인식하는 기능이 있음

2. 러프한 화면

image

image

Week 2

채팅 프로젝트 만들기

image

이미지 인식 기능

사용된 Android 기능 및 기술

Week 3

스테이지 & 뱃지함 리스트 추가

image

burnout's People

Contributors

ggujangi avatar hakzzang avatar serensis avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

burnout's Issues

각종 버그 개선

각종 버그 개선

  • 버블로 Activity 죽는 현상
  • 3스테이지까지만 진행하도록 로직 변경
  • 데이터베이스를 통해서 썸네일 접근하도록 로직 변경

채팅 기능에 데이터베이스 연결하기

채팅 기능에 데이터베이스 연결하기

  • 기존에 만든 Dao를 플레이 규격에 맞게 변경하기
  • 저장하기 기능 추가
  • 불러오기 기능 추가
  • 데이터베이스 테스트코드 추가

카메라 미션 기능

전체 진행 작업
1차 :

  1. 구글 TF 카메라 예제 분석 <진행 중>
  2. Bird Model 로 데이터 변경 후 테스트
    =============================
  3. Project UI 로 변경 <진행 중>
  • 이미지 캡쳐 기능 추가
  • material UI 적용

카메라 UI 적용

CameraX API 적용
캡쳐 후 미리 보기 화면 구성
TF 결과 보기 화면 구성

scetchi 분석 TF 추가

스케치 분석 UI 및 TF 모델 추가
기존 TF Worker에 해당 내용 추가
채팅 스크립트 추가 및 연동 완료 <테스트 필요>
연결 부분에 잘못된 곳은 수정 필요

스크립트 고도화하기

스크립트 고도화하기

  • MainActivity -> ChattingActivity 연결
  • Answer를 통해서 카메라로 연결
  • Answer에 따라 다른 답변 보여주기
  • Script 보완하기

가로모드로 돌아갈 때 버그 수정하기

가로모드로 돌아갈 때 버그 수정하기

  • 바텀 네비게이션이 제대로 나오지 않는 현상 개선하기
    문제 :
  • 가로모드로 돌릴 때, 발생하는 에러는 현재 FragmentDialog의 생성자 변수에 대한 소실함.
  • Fragment를 기본적으로 만들어줄 때의 구조처럼 newInstance()를 통해서 생성을 해야함.
  • 하지만, 생성자의 파라매터는 Map과 콜백이라서 어떻게 해야할지 고민
    해결방법:
  • 변수인 lastScript와 callback을 뷰모델과 프레그먼트에서 갖고 있도록 로직 변경

뱃지함 만들기

뱃지함 만들기

  • AppBar와 뱃지함 연결하기
  • 뱃지함 UI 만들기

Stage UI 및 로직 추가하기

Stage UI 및 로직 추가하기

  • 데이터베이스 연결
  • Stage UI 연결
  • 진행한 미션, 진행하는 미션, 완료한 미션으로 나누어서 UI 보여주기

대화 기능 추가하기

대화 기능 추가하기

  • 대화 선택하기
  • 스토리 작업하기
  • 스토리에 따른 진행하기
  • 메인화면 리스트에서 스토리 진행하기
  • 마지막 스토리 이어서 하기
  • 버블에서 스토리 읽기

채팅 버그 개선하기

채팅 버그 개선하기

  • 채팅 버그 개선하기
  • 가로모드 돌릴 때 다이얼로그 죽는 현상 개선
  • 대화가 다이얼로그 들어갔다 나오면 정상적으로 작동하지 않는 현상 개선
  • 정상적으로 대화가 진행되지 않는 현상 개선
  • 미션을 완료하고, submitList가 되지 않아서 최신화가 되지 않는 현상 개선

Project 구조 잡기

Project 구조 잡기

  • 라이브러리 추가
  • 프로젝트 아키텍쳐 구조 추가

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.