§서비스 시작, 중지하기 • 서비스 시작하기 Ø Component. Name start. Service(Intent intent) • 서비스 중지하기 Ø boolean stop. Service(Intent intent) • 서비스 스스로 종료하기 Ø void stop. Self(int start. Id) 8
§서비스의 Life Cycle on. Create() start. Service() bind. Service() on. Start. Command() on. Bind() on. Re. Bind() Service 수행 on. Un. Bind() on. Destroy() 9
Notification 10
§서비스 예제(1/4) • Service. Example. java 18
§서비스 예제(2/4) • My. Service. java (1/2) 19
§서비스 예제(3/4) • My. Service. java (2/2) 20
§하드웨어 알림(벨소리, 진동, LED)(1/3) • 사용자가 설정해둔 기본값을 사용하는 방법 Ø Notification. defaults � Notification. DEFAULT_LIGHTS � Notification. DEFAULT_SOUND � Notification. DEFAULT_VIBRATE � Notification. DEFAULT_ALL 22
§하드웨어 알림(벨소리, 진동, LED)(2/3) • 벨소리 지정하기 Ø Uri Notification. sound • 진동 설정하기 Ø 진동 기능을 사용하려면 권한이 필요 � Android. Manifest. xml 에 다음 코드를 추가해야 함 � <uses-permission android: name=“android. permission. VIBRATE”/> Ø long[] Notification. vibrate 23
Alarm 26
§알람 관리하기 – Alarm. Manager • 반복 알람을 발생시키는 메서드 Ø set. Repeating (int type, long trigger. At. Time, long interval, Pending. Intent operation) � 정확하게 지정된 시간간격으로 알람을 발생시키지만 배터리 소모가 상당히 클 수 있다. Ø set. Inexact. Repeating (int type, long trigger. At. Time, long interval, Pending. Intent operation) � 정확한 간격 대신 Alarm. Manager에 정의된 상수들 중 하나를 사용하여 알람을 반복한다. (배터리 효율이 좋음) � INTERVAL_FIFTEEN_MINUTES, INTERVAL_HALF_HOUR, INTERVAL_HALF_DAY, INTERVAL_DAY • 알람을 취소하는 메서드 Ø cancel (Pending. Intent operation) 29