SlideShare une entreprise Scribd logo
1  sur  17
미아찾기
어플리케이션
김대환
daehwan7298@gmail.com
https://github.com/miraclehwan/LookAtMe
[ 개발환경 ]
- Ubuntu
- Apache 2.4.7
- php 5.5.9
- MySQL 5.5.49
- Android Studio
- JSON
[ 프로젝트 개요 ]
- 프로젝트명 : 룩앳미
- 프로젝트 목표 : 스마트폰을 활용하여 안내방송보다 더 빠른 신속함과
전단지의 시각적인 효과인 정확성을 결합하여 더 빠른 대응
- 담당파트 : 개발
- 개발기간 : 1개월
[ 프로젝트 주요기능 ]
- 이미지와 정보(텍스트)를 입력하여 신고가능
- 신고발생시 수집한 위치정보 기반으로 신고지점 근처 사용자에게 푸시알람 발송
- 신고페이지의 댓글 기능을 활용하여 실시간 제보 및 정보공유 기능
- 전체 리스트를 활용하여 모든 미아정보를 확인 가능
[ 회원가입 ]
- 최초 접속시 FCM을 위한 토큰생성
- 이후 접속시 닉네임, 토큰을 서버와 비교하여
자동 로그인
- 약관동의 후 매접속시마다
GPS가 꺼져있을 경우 알람발생
‘켜기’ 선택시 GPS설정으로 이동
[ 메인페이지 ]
- Navigation Drawer를 사용하여 구현
- 사용자 위치정보수집 서비스를 실행, 서버로 10분마다 전송
( 휴대폰 재시작시 자동으로 서비스 실행 )
- 전화신고, 상담전화, 문자상담의 경우
담당기관의 연락처가 입력된 통화, 문자 앱으로 이동
- 방문신고의 경우 현재위치에서 직선거리로
가장 가까운 경찰서의 위치와 연락처를 Dialog로 구현
( 연락처를 터치하여 통화 앱으로 이동 가능 )
[ 위치정보수집 서비스 구성도 ]
Main.java
PersistentService.java
( Service )
최초 서비스 실행
( startService )
RestartService.java
( BroadcastReceiver )
onDestroy가 호출될 때
PendingIntent에 Action을 추가하여
AlarmManager를 이용하여 BroadCast
Action 확인 후
서비스 실행
( startService )
BroadcastReceiver에 등록된
‘ACTION_BOOT_COMPLETED’
Action을 받게될 경우
# Receiver에 등록한 intent-filter 목록
[ 메뉴별 기능 ]
메뉴 기능
신고내역 사용자의 모든 신고내역 확인
진행사항 사용자의 미해결 신고내역 확인
제보댓글 사용자가 남긴 댓글 확인
신고하기 미아신고 기능
내주변수신 푸시알람을 받은 신고 리스트 확인
실종리스트 모든 미해결 신고에 대한 리스트 확인
해결리스트 모든 해결 신고에 대한 리스트 확인
[ 신고하기 ]
- 6초마다 사용자의 위치 새로고침 ( 주소, 시간 동일 )
[ 신고하기 ]
- 갤러리의 이미지 첨부
- 간단한 개인정보 입력
[ 신고하기 ]
- 자세한 정보를 입력하여 전달
- ‘신고’ 버튼 터치시
이미지를 ¼로 Decode해서 모든 텍스트와 함께 서버로 전달
- 텍스트, 이미지(경로)를 DB에 입력하여
신고시간 15분전 && 직선거리 3Km 이하의
모든 사용자에게 푸시알람 발송
[ 신고내역 ]
- 사용자의 모든 신고내역 확인가능
- ListView를 사용하여 구현
- 원하는 리스트를 선택하여 자세한 정보 확인 가능
[ 정보보기 ]
- TabHost를 사용하여 구현
- 사진의 줌 in/out 가능 ( Photo View 라이브러리 )
- 진행상황에 댓글로 제보가 가능하게 구현 ( ListView )
[ 진행사항 ]
- 사용자의 신고내역 확인 가능
- ‘마감하기’를 선택할 경우 진행사항이 ‘0’으로 변경되며
해당 리스트는 해결리스트로 이동
- ListView를 사용하여 구현
( 내주변수신, 실종리스트, 해결리스트 동일 UI )
[ Issue ]
[ 사용한 라이브러리 및 사유 ]
- 일러스트와 사진을 ImageView에 setImage로 넣을 경우 메모리 낭비가 심하고 OOM발생
> Glide 라이브러리를 사용하여 해결
- 사진 줌 in/out 기능
> Photo View 라이브러리를 사용
- 사진을 서버로 전송 시 사진의 용량 때문에 전송이 오래 걸림
> Apache http 사용
> 사진을 ¼로 Decode한 후 전송
- 구글 거리계산 API를 사용하려고 하였으나 일일쿼리제한과
경찰서의 경우 300번의 비교가 필요하므로 속도면에서 느리다고 판단
> 국토지리정보원에서 제공하는 거리계산 함수를 서버에 php로 구현
[ 개선해야할 점 ]
- 변수명 및 리소스ID에 대한 네이밍을 고려하지 않은 점
- 어플의 깊이를 고려하지 못한 점
> 메인페이지를 Fragment로 구현하여 Navigation Drawer에서 메뉴선택시 해당 Fragment만
replace하여 깊이를 줄임
- 사진이 ¼ 로 decode되기 때문에 화질이 안 좋을 경우 더 나빠짐
> 화질이 안 좋은 사진은 대부분 용량이 작은 점을 고려하여 기준용량을 정하거나
용량별로 나눠서 ½ , ¼ … 로 사진을 decode하여 화질 부분을 개선

Contenu connexe

En vedette

How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheLeslie Samuel
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017Drift
 
IoT 및 안드로이드 포트폴리오 - 한수빈
IoT 및 안드로이드 포트폴리오 - 한수빈IoT 및 안드로이드 포트폴리오 - 한수빈
IoT 및 안드로이드 포트폴리오 - 한수빈Subin Han
 
[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)
[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)
[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)YoungSu Son
 
Hiring day 포트폴리오_김두영
Hiring day 포트폴리오_김두영Hiring day 포트폴리오_김두영
Hiring day 포트폴리오_김두영DooYoung Kim
 
[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...
[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...
[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...유명환 FunFun Yoo
 
고등학교 3년간 개발한 프로그램들
고등학교 3년간 개발한 프로그램들고등학교 3년간 개발한 프로그램들
고등학교 3년간 개발한 프로그램들승호 채
 
Pc방 프로젝트 보고서 - 자바 프로그래밍
Pc방 프로젝트 보고서 - 자바 프로그래밍Pc방 프로젝트 보고서 - 자바 프로그래밍
Pc방 프로젝트 보고서 - 자바 프로그래밍arahansa yong
 
5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기
5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기
5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기5moments
 
스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해beom kyun choi
 
고대특강 게임 프로그래머의 소양
고대특강   게임 프로그래머의 소양고대특강   게임 프로그래머의 소양
고대특강 게임 프로그래머의 소양Jubok Kim
 
초급 개발자 탈출
초급 개발자 탈출초급 개발자 탈출
초급 개발자 탈출JeongHun Byeon
 
신입 개발자 생활백서 [개정판]
신입 개발자 생활백서 [개정판]신입 개발자 생활백서 [개정판]
신입 개발자 생활백서 [개정판]Yurim Jin
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

En vedette (20)

How to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your NicheHow to Become a Thought Leader in Your Niche
How to Become a Thought Leader in Your Niche
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
IoT 및 안드로이드 포트폴리오 - 한수빈
IoT 및 안드로이드 포트폴리오 - 한수빈IoT 및 안드로이드 포트폴리오 - 한수빈
IoT 및 안드로이드 포트폴리오 - 한수빈
 
[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)
[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)
[NEXT] Android 개발 경험 프로젝트 5일차 (Actionbar, SideNavigation)
 
Hiring day 포트폴리오_김두영
Hiring day 포트폴리오_김두영Hiring day 포트폴리오_김두영
Hiring day 포트폴리오_김두영
 
[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...
[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...
[제5회 KCD] 한국에서 커뮤니티를 운영한다는 건...
 
Modern android
Modern androidModern android
Modern android
 
고등학교 3년간 개발한 프로그램들
고등학교 3년간 개발한 프로그램들고등학교 3년간 개발한 프로그램들
고등학교 3년간 개발한 프로그램들
 
Pc방 프로젝트 보고서 - 자바 프로그래밍
Pc방 프로젝트 보고서 - 자바 프로그래밍Pc방 프로젝트 보고서 - 자바 프로그래밍
Pc방 프로젝트 보고서 - 자바 프로그래밍
 
5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기
5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기
5모먼츠 4월 정기교육 - 나만의 웹 포트폴리오/사이트 만들기
 
스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해스프링 시큐리티 구조 이해
스프링 시큐리티 구조 이해
 
고대특강 게임 프로그래머의 소양
고대특강   게임 프로그래머의 소양고대특강   게임 프로그래머의 소양
고대특강 게임 프로그래머의 소양
 
Spring Boot 소개
Spring Boot 소개Spring Boot 소개
Spring Boot 소개
 
초급 개발자 탈출
초급 개발자 탈출초급 개발자 탈출
초급 개발자 탈출
 
신입 개발자 생활백서 [개정판]
신입 개발자 생활백서 [개정판]신입 개발자 생활백서 [개정판]
신입 개발자 생활백서 [개정판]
 
sungmin slide
sungmin slidesungmin slide
sungmin slide
 
SlideShare 101
SlideShare 101SlideShare 101
SlideShare 101
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Similaire à 룩앳미(포트폴리오) - 김대환

[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?주식회사 내일비
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?Sang-ho Choi
 
리멤버 데스크톱 앱 개발기
리멤버 데스크톱 앱 개발기리멤버 데스크톱 앱 개발기
리멤버 데스크톱 앱 개발기Tom Kim
 
Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발지헌 선
 
2일차 20140402
2일차 201404022일차 20140402
2일차 20140402Jake Yoon
 
Internship backend
Internship backendInternship backend
Internship backendYein Sim
 
Google analytics in business
Google analytics in businessGoogle analytics in business
Google analytics in businessTae Young Lee
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)수보 김
 
제품소개서 (Pastel editor)
제품소개서 (Pastel editor)제품소개서 (Pastel editor)
제품소개서 (Pastel editor)Kevin Hyun
 
제품소개서( Pastel Editor)
제품소개서( Pastel Editor)제품소개서( Pastel Editor)
제품소개서( Pastel Editor)Kevin Hyun
 
아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 Attendee아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 AttendeeLEEDONGJOON1
 
권기훈_개인포트폴리오
권기훈_개인포트폴리오권기훈_개인포트폴리오
권기훈_개인포트폴리오Kihoon4
 
2021 분산컴퓨팅 최종 프로젝트
2021 분산컴퓨팅 최종 프로젝트2021 분산컴퓨팅 최종 프로젝트
2021 분산컴퓨팅 최종 프로젝트ssuser4d897d
 
Pathway to real time mobile cloud
Pathway to real time mobile cloudPathway to real time mobile cloud
Pathway to real time mobile cloudjhpark
 
[Ansible] Solution Guide V0.4_20181204.pdf
[Ansible] Solution Guide V0.4_20181204.pdf[Ansible] Solution Guide V0.4_20181204.pdf
[Ansible] Solution Guide V0.4_20181204.pdfHeeJung Chae
 
Windows7처음다루기 it전문교육
Windows7처음다루기 it전문교육Windows7처음다루기 it전문교육
Windows7처음다루기 it전문교육parkso
 
Richslide for enterprise
Richslide for enterpriseRichslide for enterprise
Richslide for enterpriseJun Gyun Bae
 
2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현kdh24
 

Similaire à 룩앳미(포트폴리오) - 김대환 (20)

[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
 
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
[커빙 아키텍쳐] 커빙은 어떻게 소셜 컨텐츠를 모아올까요?
 
리멤버 데스크톱 앱 개발기
리멤버 데스크톱 앱 개발기리멤버 데스크톱 앱 개발기
리멤버 데스크톱 앱 개발기
 
Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발Gae와cloud sql을이용한 전자결재 개발
Gae와cloud sql을이용한 전자결재 개발
 
Parallel diary
Parallel diaryParallel diary
Parallel diary
 
2일차 20140402
2일차 201404022일차 20140402
2일차 20140402
 
Internship backend
Internship backendInternship backend
Internship backend
 
Google analytics in business
Google analytics in businessGoogle analytics in business
Google analytics in business
 
서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)서버학개론(백엔드 서버 개발자를 위한)
서버학개론(백엔드 서버 개발자를 위한)
 
제품소개서 (Pastel editor)
제품소개서 (Pastel editor)제품소개서 (Pastel editor)
제품소개서 (Pastel editor)
 
제품소개서( Pastel Editor)
제품소개서( Pastel Editor)제품소개서( Pastel Editor)
제품소개서( Pastel Editor)
 
아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 Attendee아마존 웹서비스를 이용한 WebApp 제작 Attendee
아마존 웹서비스를 이용한 WebApp 제작 Attendee
 
권기훈_개인포트폴리오
권기훈_개인포트폴리오권기훈_개인포트폴리오
권기훈_개인포트폴리오
 
2021 분산컴퓨팅 최종 프로젝트
2021 분산컴퓨팅 최종 프로젝트2021 분산컴퓨팅 최종 프로젝트
2021 분산컴퓨팅 최종 프로젝트
 
딥러닝이 바꾸는 애자일 테스팅
딥러닝이 바꾸는 애자일 테스팅딥러닝이 바꾸는 애자일 테스팅
딥러닝이 바꾸는 애자일 테스팅
 
Pathway to real time mobile cloud
Pathway to real time mobile cloudPathway to real time mobile cloud
Pathway to real time mobile cloud
 
[Ansible] Solution Guide V0.4_20181204.pdf
[Ansible] Solution Guide V0.4_20181204.pdf[Ansible] Solution Guide V0.4_20181204.pdf
[Ansible] Solution Guide V0.4_20181204.pdf
 
Windows7처음다루기 it전문교육
Windows7처음다루기 it전문교육Windows7처음다루기 it전문교육
Windows7처음다루기 it전문교육
 
Richslide for enterprise
Richslide for enterpriseRichslide for enterprise
Richslide for enterprise
 
2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현
 

룩앳미(포트폴리오) - 김대환

  • 2. [ 개발환경 ] - Ubuntu - Apache 2.4.7 - php 5.5.9 - MySQL 5.5.49 - Android Studio - JSON
  • 3. [ 프로젝트 개요 ] - 프로젝트명 : 룩앳미 - 프로젝트 목표 : 스마트폰을 활용하여 안내방송보다 더 빠른 신속함과 전단지의 시각적인 효과인 정확성을 결합하여 더 빠른 대응 - 담당파트 : 개발 - 개발기간 : 1개월
  • 4. [ 프로젝트 주요기능 ] - 이미지와 정보(텍스트)를 입력하여 신고가능 - 신고발생시 수집한 위치정보 기반으로 신고지점 근처 사용자에게 푸시알람 발송 - 신고페이지의 댓글 기능을 활용하여 실시간 제보 및 정보공유 기능 - 전체 리스트를 활용하여 모든 미아정보를 확인 가능
  • 5. [ 회원가입 ] - 최초 접속시 FCM을 위한 토큰생성 - 이후 접속시 닉네임, 토큰을 서버와 비교하여 자동 로그인 - 약관동의 후 매접속시마다 GPS가 꺼져있을 경우 알람발생 ‘켜기’ 선택시 GPS설정으로 이동
  • 6. [ 메인페이지 ] - Navigation Drawer를 사용하여 구현 - 사용자 위치정보수집 서비스를 실행, 서버로 10분마다 전송 ( 휴대폰 재시작시 자동으로 서비스 실행 ) - 전화신고, 상담전화, 문자상담의 경우 담당기관의 연락처가 입력된 통화, 문자 앱으로 이동 - 방문신고의 경우 현재위치에서 직선거리로 가장 가까운 경찰서의 위치와 연락처를 Dialog로 구현 ( 연락처를 터치하여 통화 앱으로 이동 가능 )
  • 7. [ 위치정보수집 서비스 구성도 ] Main.java PersistentService.java ( Service ) 최초 서비스 실행 ( startService ) RestartService.java ( BroadcastReceiver ) onDestroy가 호출될 때 PendingIntent에 Action을 추가하여 AlarmManager를 이용하여 BroadCast Action 확인 후 서비스 실행 ( startService ) BroadcastReceiver에 등록된 ‘ACTION_BOOT_COMPLETED’ Action을 받게될 경우 # Receiver에 등록한 intent-filter 목록
  • 8. [ 메뉴별 기능 ] 메뉴 기능 신고내역 사용자의 모든 신고내역 확인 진행사항 사용자의 미해결 신고내역 확인 제보댓글 사용자가 남긴 댓글 확인 신고하기 미아신고 기능 내주변수신 푸시알람을 받은 신고 리스트 확인 실종리스트 모든 미해결 신고에 대한 리스트 확인 해결리스트 모든 해결 신고에 대한 리스트 확인
  • 9. [ 신고하기 ] - 6초마다 사용자의 위치 새로고침 ( 주소, 시간 동일 )
  • 10. [ 신고하기 ] - 갤러리의 이미지 첨부 - 간단한 개인정보 입력
  • 11. [ 신고하기 ] - 자세한 정보를 입력하여 전달 - ‘신고’ 버튼 터치시 이미지를 ¼로 Decode해서 모든 텍스트와 함께 서버로 전달 - 텍스트, 이미지(경로)를 DB에 입력하여 신고시간 15분전 && 직선거리 3Km 이하의 모든 사용자에게 푸시알람 발송
  • 12. [ 신고내역 ] - 사용자의 모든 신고내역 확인가능 - ListView를 사용하여 구현 - 원하는 리스트를 선택하여 자세한 정보 확인 가능
  • 13. [ 정보보기 ] - TabHost를 사용하여 구현 - 사진의 줌 in/out 가능 ( Photo View 라이브러리 ) - 진행상황에 댓글로 제보가 가능하게 구현 ( ListView )
  • 14. [ 진행사항 ] - 사용자의 신고내역 확인 가능 - ‘마감하기’를 선택할 경우 진행사항이 ‘0’으로 변경되며 해당 리스트는 해결리스트로 이동 - ListView를 사용하여 구현 ( 내주변수신, 실종리스트, 해결리스트 동일 UI )
  • 16. [ 사용한 라이브러리 및 사유 ] - 일러스트와 사진을 ImageView에 setImage로 넣을 경우 메모리 낭비가 심하고 OOM발생 > Glide 라이브러리를 사용하여 해결 - 사진 줌 in/out 기능 > Photo View 라이브러리를 사용 - 사진을 서버로 전송 시 사진의 용량 때문에 전송이 오래 걸림 > Apache http 사용 > 사진을 ¼로 Decode한 후 전송 - 구글 거리계산 API를 사용하려고 하였으나 일일쿼리제한과 경찰서의 경우 300번의 비교가 필요하므로 속도면에서 느리다고 판단 > 국토지리정보원에서 제공하는 거리계산 함수를 서버에 php로 구현
  • 17. [ 개선해야할 점 ] - 변수명 및 리소스ID에 대한 네이밍을 고려하지 않은 점 - 어플의 깊이를 고려하지 못한 점 > 메인페이지를 Fragment로 구현하여 Navigation Drawer에서 메뉴선택시 해당 Fragment만 replace하여 깊이를 줄임 - 사진이 ¼ 로 decode되기 때문에 화질이 안 좋을 경우 더 나빠짐 > 화질이 안 좋은 사진은 대부분 용량이 작은 점을 고려하여 기준용량을 정하거나 용량별로 나눠서 ½ , ¼ … 로 사진을 decode하여 화질 부분을 개선