본문 바로가기

[ 프로그래밍 ]/강좌

안드로이드 앱 개발 특강(심화)

1. HTML Parser의 사용

기상청 날씨 어플, 버스 운행시간 안내 어플 등 기존에 홈페이지에 공개되어 있는 자료를 바탕으로 프로그램을 제작할 때 필요한 기술로, Google이나 Naver와 같이 OPEN API로 JSON, XML 등의 데이터를 제공하는 사이트가 아닌 대부분의 일반 사이트에서 HTML 문서 내에 포함된 각종 데이터를 원하는 내용만 수집하여 저장.

참고자료 : 

1) Jericho HTML Parser 사이트 : http://jericho.htmlparser.net/docs/index.html
2) Jericho HTML Parser 다운로드 : http://sourceforge.net/projects/jerichohtml/files
3) Jericho HTML Parser 안드로이드용 라이브러리 (출처: http://blog.naver.com/zeanz/110092582999 ) jericho-android.3.1.jar


2. csv 파일의 사용

변수나 배열에 저장하기에는 데이터가 많고, 그렇다고 DB를 사용하기에는 데이타 양이 적은경우 좋은 방법.

1) assets 폴더에 데이터 저장
2) AssetManager의 getResources().getAssets() 이용 권한 획득
3) InputStream 이용 파일 열기
4) InputStreamReader 이용 스트림 데이터 획득
5) BufferedReader 이용 라인별 데이터 획득
6) StringTokenizer 이용 ',' 구분 및 요소별 데이터 획득



3. 프로필 (이력서) 어플리케이션의 개발

자기 스스로를 광고할 수 있는 어플리케이션 개발

CV.zip

 

CV.apk

 

4. Google Map API 사용하기

1) MD5 지문 생성:
keytool -v -list -alias androiddebugkey -keystore debug.keystore -storepass android -keypass android

2) API Key 받기
https://developers.google.com/android/maps-api-signup?hl=ko

3) 권한설정

  • android.permission.INTERNET
  • android.permission.ACCESS_FINE_LOCATION

4) 라이브러리 추가
com.google.android.maps / required = true;

5) MapActivity 상속 및 필수 코드 작성

6) 줌 컨트롤 삽입
map.setBuiltInZoomControls(true);

7) 위성사진 or StreetView
map.setStreetView(false);
map.setSatellite(true);

8) 맵 중앙지점 변경( GPS좌표는 https://maps.google.com/ 에서 확인 가능 )
double lat =  35.23917; // 위도
double lon =  129.078661; // 경도
map.getController().setCenter(new GeoPoint((int)(lat*1E6), (int)(lon*1E6)));


※ 예제 프로그램 Wake Me Up
: 사용자가 DB에 저장 된 위치에 가까워지면 알려주는 어플

Wake Me Up.zip