파일 처리 기본: Raw / Internal Memory / SD Card 각각에서의 파일 입출력 방법
View에서의 터치 이벤트 인식 및 처리 방법
Activity의 Lifecycle과 Intent: <onCreate, onStart, onResume, onPause, onStop, onRestart, onDestroy> Life Cycle과 <putExtra, getExtra>로 Activity 간의 데이터 이동, Activity의 result를 return하는 방법 등
관계형 데이터베이스 사용법: SQLite를 이용한 데이터베이스 query 방법
MediaPlayer의 사용법
Multithreading: Anonymous Thread class를 활용한 방법, runOnUiThread 메소드 사용
중간 발표가 05/19(금)이므로, 늦어도 화요일 저녁까지는 중간 발표에서 발표할 기능들에 대한 구현을 마치고, 수요일과 목요일 저녁까지 발표 자료 제작 및 보고서 작성을 해야 할 것 같습니다.
중간 발표 전까지 제가 해야 할 일은 아래와 같습니다.
RecyclerView를 학습합니다.(교재 이용)
웹툰 목록 Activity, 웹툰 회차 선택 Activity, 웹툰 View Activity가 있는 기본적인 웹툰 앱을 구현합니다:
중간 발표 때에는 일단 TensorFlow팀에서 사람을 인식하는 Activity를 따로 구현해주셨으면 좋겠습니다.(예제 구현을 다듬어서 발표하면 될 것 같습니다.) 발표 이후 이 Activity를 합치고 SurfaceView, OpenGL을 사용하여 인식된 위치에 Object를 표현하면 될 것 같습니다.
메타데이터 저장을 위해서는 SQLite를 사용하겠습니다.
'자동회전 끄기', '화면 캡쳐', '좋아요' 등의 기본적인 기능은 현재의 네이버 웹툰 앱을 따라서 구현하도록 하겠습니다. '회차 공유하기', '임시저장' 등의 기능은 시간을 조금 들이면 구현이 가능할 것 같지만, 일단은 프로젝트에서 가장 중요한 구현 부분은 아닌 것 같아서 중간 발표 이후에 논의하고 싶습니다.
일단 중간 발표 때에는 로컬에 있는 Image를 스크롤하는 수 있는 웹툰 앱을 만들겠습니다. 추후에 네트워크에서의 로드를 위해 Glide 이미지로더를 사용하도록 바꾸면 될 것 같습니다. Glide API의 GitHub README에 나온 사용법을 보니, RecyclerView imageView에 이미지를 로드하도록 Glide API를 한 줄만 호출하면 되는 것 같아 수정은 매우 간단할 것 같습니다. 다만 Glide가 네트워크 상의 이미지만을 불러오는 API인지, 로컬의 이미지도 로드할 수 있는 API인지는 더 공부하도록 하겠습니다.
SurfaceView와 OpenGL, 센서 활용 방법의 일부분을 학습하여, 입력된 좌표 상에 Object를 그리는 Activity를 구현해보도록 하겠습니다. 아무래도 OpenGL을 접해보지 못해서 시간이 많이 걸릴 것으로 예상되어, 중간 발표 내에는 힘들 수수도 있습니다. 만약 구현된다면 중간 발표 시에는 Activity에 주어지는 좌표값이 추후에는 TensorFlow 모델에서 주어질 것이고, 이를 통해 사람을 인식하는 AR 뷰어를 만들 수 있다고 발표하면 될 것 같습니다.
중간 발표 이후 해야 할 일
만약 위의 구현이 중간 발표 전까지 잘 이루어진다면, 중간 발표 후에는
Activity들을 합치고
TensorFlow Model의 정확도를 높이는 학습을 진행하면서
UI와 추가 기능들, Multithreading 등을 구현하고 다듬는 식으로
진행할 수 있지 않을까 생각합니다.
매우 기초적인 내용
안드로이드 앱 개발 기초
중간 발표 이전까지 완료할 일들
중간 발표가 05/19(금)이므로, 늦어도 화요일 저녁까지는 중간 발표에서 발표할 기능들에 대한 구현을 마치고, 수요일과 목요일 저녁까지 발표 자료 제작 및 보고서 작성을 해야 할 것 같습니다. 중간 발표 전까지 제가 해야 할 일은 아래와 같습니다.
중간 발표 이후 해야 할 일
만약 위의 구현이 중간 발표 전까지 잘 이루어진다면, 중간 발표 후에는
감사합니다!