IT CookBook, Android Studio 를 활용한 안드로이드 프로그래밍 Copyright© 2015 Hanbit Academy, Inc. All rights reserved. 14. 서비스와 브로드캐스트 리시버.

Slides:



Advertisements
Similar presentations
Page  1 Copyright© Hanbit Media, Inc. All rights reserved. IT CookBook, 안드로이드 프로그래밍 본 강의교안은 수업상황을 도입 - 전개 - 마무리로 구분하여 수업의 각 단계에서 필요한 요소 중 강의교안으로.
Advertisements

Android 프로그램개발 환경. 학습 목표 ■ 교육 목표  JDK 설치  JDK 환경 설정  Eclipse 설치  Android SDK 설치  ADT Plug-in 설치  Android Virtual Device(AVD) 설치  Android 예제 프로그램.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
CHAP 22. 블루투스.
OpenCV 안드로이드 연동 환경설정 OpenCV-Android 를 다운 받습니다.
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
02. 처음으로 만드는 안드로이드 애플리케이션 제목.
02. 처음 만드는 안드로이드 애플리케이션 제목.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
Power Java 제3장 이클립스 사용하기.
4강. Servlet 맛보기 Servlet 문서 작성 하기 web.xml에 서블릿 맵핑 어노테이션을 이용한 서블릿 맵핑
최윤정 Java 프로그래밍 클래스 상속 최윤정
02. 처음으로 만드는 안드로이드 응용 프로그램 제목. 02. 처음으로 만드는 안드로이드 응용 프로그램 제목.
Outlook Express 메일 백업 및 복원가이드
08. 파일 처리 제목. 08. 파일 처리 제목 파일 처리 방식을 익힌다. SD카드의 파일 처리 방식을 배운다. 커스텀뷰의 작성법을 살펴본다.
네트워크 스캔하기 WiFi 시리얼 보드 활용가이드 김영준 헬로앱스 (
CHAP 24. nfc와 앱위젯.
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
07. 메뉴와 대화상자 제목. 07. 메뉴와 대화상자 제목 메뉴를 작성하고 사용하는 방법을 배운다. 토스트의 다양한 출력 방법을 알아본다. 대화상자의 사용법을 익힌다.
14. 서비스와 브로드캐스트 리시버 제목. 14. 서비스와 브로드캐스트 리시버 제목.
홍익대학교 메일 시스템 구축 Outlook 설정 매뉴얼.
06. 고급 위젯 다루기 제목. 06. 고급 위젯 다루기 제목 고급 위젯을 다루는 방법을 익힌다. 뷰 컨테이너와 그 응용법을 학습한다. 매니패스트 파일의 설정법을 배운다.
Android 시리즈 H2O SIM Card 데이터 사용 설정 방법
08. 파일 처리 제목. 08. 파일 처리 제목 파일을 처리하는 방식을 익힌다. SD카드의 파일을 처리하는 방식을 배운다. 커스텀뷰의 작성법을 알아본다.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
TETRIS FOR QTOPIA.
1. C++ 시작하기.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
WinCE Device Driver 실습 #3
WinCE Device Driver 실습 #2
Power Java 제14장 배치 관리자.
14 SQLite DB 활용 B A S I C 1 4_ 고객 등록과 조회 L A B 1 4_ 수정과 삭제를 포함하는 고객관리시스템 Advanced LAB 14_ 탭 메뉴의 고객관리시스템.
10장. 예외처리.
CHAP 12. 리소스와 보안.
Eclipse 를 이용한 네트워킹 퍼즐 게임 “Scrambled Net” 담당 교수님 전진우 교수님 최은아.
Method & library.
영상처리 실습 인공지능연구실.
홍익대학교 메일 시스템 구축 그룹웨어 메일 이전 하기.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
10. 액티비티와 인텐트 제목. 10. 액티비티와 인텐트 제목 액티비티의 개념을 파악한다. 인텐트의 개념과 활용법을 익힌다. 액티비티 생명주기에 대해 알아본다.
2강_첫번째 안드로이드 프로젝트 에뮬레이터(AVD) 만들기 처음 만들어 보는 프로젝트 전체적인 구성 살펴보기
자바 5.0 프로그래밍.
PMIS 서버 설정 환경설정 작성자 : 배경환.
Fucntion 요약.
CHAP 21. 전화, SMS, 주소록.
11. 어댑터뷰 제목. 11. 어댑터뷰 제목 리스트뷰와 그리드뷰 활용법을 배운다. 갤러리와 스피너의 사용법을 익힌다.
( Windows Service Application Debugging )
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
OpenCV 설정 2.21 만든이 딩딩.
DK-128 개발환경 설정 아이티즌 기술연구소
영상처리 실습 (OpenCV + MFC) Chonbuk National University A.I. Lab.
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
.Net Web Application 2007 컴퓨터공학실험(Ⅰ)
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
Tensorboard in Windows
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
9 브라우저 객체 모델.
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
무선랜 사용자 설명서 (Windows Vista 사용자).
JSP Programming with a Workbook
Power Java 제14장 배치 관리자.
숙제 작성 및 제출 과정 김진하 2008/03/14.
7 생성자 함수.
6 객체.
Presentation transcript:

IT CookBook, Android Studio 를 활용한 안드로이드 프로그래밍 Copyright© 2015 Hanbit Academy, Inc. All rights reserved. 14. 서비스와 브로드캐스트 리시버

Page  2 학습목표 Copyright© 2015 Hanbit Academy, Inc. All rights reserved. 서비스의 개념을 파악한다. 앱을 종료해도 음악이 계속 나오는 서비스를 만든다. 브로드캐스트 리시버의 개념을 파악한다. 배터리 방전 시 동작하는 앱을 작성한다.

Page  3 차례 Copyright© 2015 Hanbit Academy, Inc. All rights reserved. 01 서비스 02 브로드캐스트 리시버 03 콘텐트 프로바이더

Page  4 1. 서비스 [1/13]  서비스 (Service) 일반적으로 화면 없이 동작하는 프로그램을 뜻함 백그라운드 프로세스 (Background Process) 라고도 함 액티비티 응용프로그램은 화면 ( 액티비티 ) 이 종료되면 동작하지 않지만 서비스 는 백그라운드에서 실행되므로 화면과 상관없이 계속 동작함

Page  5 1. 서비스 [2/13]  서비스 생명 주기

Page  6 1. 서비스 [3/13]  안드로이드 프로젝트 생성 프로젝트 이름 : Project14_1 패키지 이름 : com.cookandroid.project14_1

Page  7 1. 서비스 [4/13]  activity_main.xml 수정 버튼 2 개를 생성하고 id 는 btnStart, btnStop 으로 함

Page  8 1. 서비스 [5/13]  Java 코드 작성 및 수정 Service 클래스의 상속을 받는 MusicService 클래스 정의

Page  9 1. 서비스 [6/13]  Java 코드 작성 및 수정 onCreate( ), onDestroy( ), onStartCommand( ) 메소드 안에 로그를 남기도록 코딩

Page  서비스 [7/13]  MusicService 클래스에 음악을 시작하고, 정지하는 코드 추가 res 폴더 아래에 raw 폴더를 생성 MP3 파일을 하나 복사 전역변수로 MediaPlayer 변수 1 개 선언 onStartCommand( ) 메소드에 MP3 파일을 시작하는 코드를 추가 onDestroy( ) 메소드에 음악을 중지시키는 코드를 추가

Page  서비스 [8/13]  메인 Java 코드 완성 MusicService 클래스를 적용할 Intent 변수 1 개와 Button 변수 2 개를 전역변수로 선언 인텐트 변수를 생성하면서 MusicService 클래스를 생성자에 넘김 activity_main.xml 의 버튼 2 개를 버튼 변수에 적용시킴 을 클릭하면 startService( ) 를 호출하고 로그를 남김 를 클릭하면 stopService( ) 를 호출하고 로그를 남김

Page  서비스 [9/13]  AndroidManifest.xml 을 열고 안에 서비스 등록

Page  서비스 [10/13]  프로젝트 실행 및 결과 확인 로그 화면을 보기 위한 로그캣 (LogCat) 화면이 보이지 않으면 Android Studio 메뉴 [Tools]-[Android]-[Android Device Monitor] 를 선택

Page  서비스 [11/13]  프로젝트 실행 및 결과 확인 를 클릭 Filter Name 에는 임의의 이름을 넣고, by Log Tag 에 “ 서비스 테스트 ” 를 입력

Page  서비스 [12/13]  프로젝트 실행 및 결과 확인 을 클릭하면 음악이 재생되는지 확인 후 로그캣 확인 를 누르고 음악이 중지되면 로그캣 확인

Page  서비스 [13/13]

Page  브로드캐스트 리시버 [1/10]  브로드캐스트 리시버 (BR, Broadcast Receiver) 안드로이드는 문자 메시지 도착, 배터리 방전, SD 카드 탈부착, 네트워크 환경 변화 등이 발생하면 방송 (Broadcast) 신호를 보내는데, 이런 신호를 받아서 처리하는 것이 리시버임 브로드캐스트 리시버의 대표적인 응용은 배터리 상태 확인

Page  브로드캐스트 리시버 [2/10]  안드로이드 프로젝트 생성 프로젝트 이름 : Project14_2 패키지 이름 : com.cookandroid.project14_2  디자인 및 편집 배터리 상태에 따라 변하는 이미지 5 개를 /res/drawable-hdpi 에 복사

Page  브로드캐스트 리시버 [3/10]  activity_main.xml 수정 이미지뷰 1 개와 에디트텍스트 1 개를 생성, id 는 ivBattery, edtBattery 로 함

Page  브로드캐스트 리시버 [4/10]  Java 코드 작성 및 수정 ImageView 변수 1 개와 EditText 변수 2 개를 전역변수로 선언 activity_main.xml 의 위젯 2 개를 변수에 적용시킴

Page  브로드캐스트 리시버 [5/10]  onCreate( ) 밖에 BR 객체 생성  onReceive( ) 메소드 인텐트의 액션이 ACTION_BATTERY_CHANGED 인 경우 다음을 처리 인텐트의 Extra 에서 배터리의 잔량을 추출 그에 따라 잔량을 표시하고 배터리 이미지를 변경 인텐트의 Extra 에서 배터리의 전원 연결 상태를 추출한 후 표시

Page  브로드캐스트 리시버 [6/10]  onPause( ), onResume( ) 를 자동완성 onResume( ) 메소드 : 인텐트 필터를 생성하고 ACTION_BATTERY_CHANGED 액션을 추가한 후 BR 에 등록 onPause( ) 메소드 : 등록된 BR 을 해제

Page  브로드캐스트 리시버 [7/10]  프로젝트 실행 및 결과 확인 명령 프롬프트를 열고 “telnet localhost 5554” 를 입력

Page  브로드캐스트 리시버 [8/10]  프로젝트 실행 및 결과 확인 power capacity 5 : 배터리 잔량 변경을 5% 로 변경 power ac off : 어댑터 연결을 뺀 것이므로, 배터리 부족 경고가 나옴

Page  브로드캐스트 리시버 [9/10]  배터리 관련 명령

Page  브로드캐스트 리시버 [10/10]

Page  콘텐트 프로바이더  콘텐트 프로바이더 (Content Provider) 안드로이드는 보안상 앱에서 사용하는 데이터를 외부에서 접근할 수가 없음 파일이나 데이터베이스를 외부 앱에서 사용하도록 하려면 콘텐트 프로바이더 (Content Provider : 줄여서 CP) 를 만들어서 외부로 제공  URI(Uniform Resource Identifier) URI 는 콘텐트 프로바이더에서 제공하는 데이터에 접근하기 위한 주소 URI 는 “content:// 패키지명 / 경로 / 아이디 ” 형식으로 지정

Page  콘텐트 프로바이더 ▶ 안드로이드 제공 콘텐트 프로바이더 [1/7]  안드로이드에서 제공하는 CP 의 사용

Page  콘텐트 프로바이더 ▶ 안드로이드 제공 콘텐트 프로바이더 [2/7]  안드로이드에서 제공하는 주요한 CP 와 URI

Page  콘텐트 프로바이더 ▶ 안드로이드 제공 콘텐트 프로바이더 [3/7]  안드로이드에서 통화기록을 가져오는 예제 AVD 에서 통화 버튼을 눌러서 통화 기록을 몇 건 남겨놓음 통화 기록에 접근하기 위해 위에 AndroidManifest.xml 의 다음 코드를 추가하여 접근 권한을 줌

Page  콘텐트 프로바이더 ▶ 안드로이드 제공 콘텐트 프로바이더 [4/7]  안드로이드에서 통화기록을 가져오는 예제

Page  콘텐트 프로바이더 ▶ 안드로이드 제공 콘텐트 프로바이더 [5/7]  안드로이드에서 통화기록을 가져오는 예제 Java 코드 (1/2)

Page  콘텐트 프로바이더 ▶ 안드로이드 제공 콘텐트 프로바이더 [6/7]  안드로이드에서 통화기록을 가져오는 예제 Java 코드 (2/2)

Page  콘텐트 프로바이더 ▶ 안드로이드 제공 콘텐트 프로바이더 [7/7]

IT CookBook, Android Studio 를 활용한 안드로이드 프로그래밍 Copyright© 2015 Hanbit Academy, Inc. All rights reserved.