Skip to content

miinsun/FoodDiary

Repository files navigation

FoodDiary

🍒🌰🍔FoodDiary🍣🥟🥪
내가 만들어 가는 나만의 음식 다이어리
시연 영상

  • 전체 맛집 리뷰 보기 사용자가 리뷰를 입력, 수정, 검색, 삭제 할 수 있는 액티비티입니다. 간단한 정보만 작성 가능했던 1학기 레포트에서 더 발전해 사용자 위치를 기반으로 한 "위치 검색" , 파일 외부 저장소의 앱 전용 폴더에 직접 촬영항 사진을 저장하는 "사진 등록" 기능이 생겼습니다.

  • 맛집 지도 맛집 지도는 사용자 위치 주변의 식당을 검색해 지도에 마커로 표시해줍니다. 사용자가 마커를 클릭하면 해당 식당의 정보(이름, 주소, 핸드폰 번호, 사진)를 확인 할 수 있습니다.

  • 나만의 맛집 지도 나만의 맛집 지도는 사용자가 작성한 모든 리뷰를 구글 맵 위에 표시해줍니다. 사용자가 마커를 클릭하면 해당 식당에서 작성한 리뷰(이름, 방문 날짜,주소, 별점, 리뷰, 사진)를 확인 할 수 있습니다. 또, 우측 상당의 공유 버튼을 클릭하면 해당 화면을 캡쳐해서 주위에 공유 할 수 있습니다. (*디버그 용 키로는 구글맵은 캡쳐가 불가능 한 점 감안 부탁드립니다.)

메뉴얼

  • 전체 맛집 리뷰 보기

    1. 우측 상단의 돋보기 아이콘 클릭 시, 검색 기능 사용
    2. 우측 상단의 더하기 아이콘 클릭 시, 리뷰 추가 가능
      장소 검색 창에 검색할 검색어 입력 후, 검색 버튼 누르면 해당 장소의 주소 자동 기입
      사진 등록 버튼을 누르면 사진 촬영 가능
    3. 리뷰 클릭 시, 리뷰 수정 가능
    4. 리뷰 롱 클릭 시, 리뷰 삭제 가능
  • 맛집 지도
    마커를 클릭하면 주변 맛집의 정보 확인 가능

  • 나만의 맛집 지도

    1. 마커를 클릭하면 기존에 작성한 리뷰 정보 확인 가능
    2. 우측 상단의 공유 버튼을 눌러 현재 화면 공유 가능

핵심 기술

  • DB SQLite
    리뷰 입력, 수정, 검색, 삭제 등 리뷰 저장 관련 기능에 SQLite 기능을 사용(+ ListView와 DB의 연결, View Holder 기능 추가로 사용)
  • Geo Coding
    리뷰 입력, 수정 시 지오 코딩을 활용해 식당 명을 입력 받아 식당의 상제 주소 값을 리턴 받음
    그림1
  • Google Open API
    주변 맛집 탐색 기능을 구현하는데 Google Open API(Map API, Place API)를 사용

    사용자 주변의 place(Type = 레스토랑)을 검색해 상세 정보(주소, 전화번호 등)를 확인 할 수 있음

  • File Manager
    File Provider 기능을 활용해 파일 외부 저장소의 앱 전용 폴더에 접근
    1. 맛집 지도 공유 기능을 사용할 때, 찍은 스크린 샷을 앱 전용 폴더에 저장 후 공유 (debug버전은 스크린 샷 공유 시 구글 맵 캡쳐 불가능) 스크린 샷 공유
    2. 리뷰를 작성 할 때, 직접 촬영한 사진을 앱 전용 폴더에 저장 사진촬영

그 외

  • 디자인 요소(UI): 아이콘, 로고, 버튼 이미지 등 제작, 타이틀 바 제거
  • 부가 기능 구현: 스크린 샷 공유 기능
  • 오류 처리: 필요 Permission이 없으면 해당 액티비티 사용 불가, Place 검색 후 주소 값, 이미지 값이 null일 때 예외 처리
  • 개선 방향: 스크린 샷 공유 시 구글 맵은 캡쳐 불가능 -> Google Cloud에서 Release 키를 발급 받아야함

About

나만의 음식 다이어리🍉🍣🍝

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages