2014년 8월 9일 토요일

안드로이드 Notification (안드로이드 알림)

안드로이드의 알림 프로그래밍 하는법을 적는다.

API 11부터 알림은 빌더를 사용해 만들도록 바뀌었다.
따라서 이 글은 빌더(Notification.Builder)를 사용한 Notification 사용 방법이다.
new Notification()을 이용하는 예전 방식이 아니다

(물론 API 11버전 이전의 스마트폰도 호환된다.)

사용법은.

1. 알림 매니저 생성
2. 알림 빌더 생성 및 설정 후 알리미 생성
3. 알림 매니저를 통해 알리미 실행

이 되겠다.




본문  시작

1. 알림 매니저 생성


알림도 시스템 서비스의 하나다.
시스템 서비스 중 NOTIFICATION_SERVICE를 얻어오면 된다.




2. 알림 빌더 생성 및 설정 후 알리미 생성


참고로 mNoti의 선언은 private Notification mNoti;  로 하였다.

빌더는 두가지가 있다.

Notification.Builder 와
NotificationCompat.Builder 

전자는 젤리빈 이상의 환경을 대상으로 한다
따라서 이전 버전의 스마트폰은 에러가 난다.
이에 호환성을 어느정도 유지하기 위해 호환모드인 Compat.Builder를 사용했다.

//주석 (굵은 글씨의 내용은 알리미 생성에의 필수요소)
알리미 = 호환빌더를 통한 생성(현재 컨텍스트)
.알리미 제목
.알리미 내용
.알리미 아이콘
.알리미 실행시 잠깐 상태바에 나오는 메시지
.알리미를 눌렀을 때 자동으로 사라지게 할 것인지
.알리미를 눌렀을 때 반응해줄 인텐트 지정
.설정한 값들을 기반으로 알리미 생성;



.setContentIntent부분의 mPendingIntent는


이렇게 구성해두었다.
내용은 간단하다.
불렸을 때 ScreenOnActivity를 띄우라는 내용이다.

펜딩 인텐트에 대한 설명은 책이나 웹을 보기 바란다. (내용이 길고 복잡하다고 생각한다)




3. 알림 매니저를 통해 알리미 실행


매니저.알리미 실행(파라미터1,파라미터2);

파라미터1 = 인식용 고유번호. 알리미를 취소할 때 사용하기 위함이다
(mNM.cancel(7777)이라고 하면 알림이 사라진다!)

파라미터2 = 알리미 객체



끝.

예제는 이쪽

댓글 없음:

댓글 쓰기