오랜만의 안드로이드 포스팅이네용.
이번엔 알림창(Notification)입니다.
문자나 이메일 등등 알림들이 오면 위에 뜨는 걸 볼 수 있습니다.
일단 간단한 코드를 보시죠.
NotificationManager nm=(NotificationManager)mContext.getSystemService(mContext.NOTIFICATION_SERVICE);
int icon=setIcon(weathericon);
Notification notification =new Notification(icon,"날씨가 업데이트 되었습니다",System.currentTimeMillis());
PendingIntent pi=PendingIntent.getActivity(mContext, 0, new Intent(mContext,MainActivity.class),0);
if(dbnotify.equals("notifyUse")){
notification.flags=Notification.FLAG_AUTO_CANCEL;
}else if(dbnotify.equals("notifyOngoing")){
notification.flags=Notification.FLAG_ONGOING_EVENT;
}
notification.setLatestEventInfo(mContext, name, weather, pi);
nm.notify(notifyId,notification);
이건 실제 쓰고있는 notification 코드인데요 알림창이 뜨면 아래와 같은 화면을 보실 수 있습니다.
화면 제일 위에 보시면 '날씨가 업데이트 되었습니다.'라고 뜨는 걸 보실 수 있습니다.
이건 위의 코드내용입니다.
Notification notification =new Notification(icon,"날씨가 업데이트 되었습니다",System.currentTimeMillis());
Notification(아이콘, 텍스트내용, 표시시간)입니다.
자세한건 개발자페이지 에 가시면 보실 수 있는데, 지금은 쓰지 않고 Notification.Builder를 쓰라네요
그래도 쓸 수 있습니다. 전 다른 코드랑 충돌이 나서 Notification을 썼습니다.
Notification.Builder도 해보시기 바랍니다.
알림창을 내렸을 때 화면입니다.
PendingIntent pi=PendingIntent.getActivity(mContext, 0, new Intent(mContext,MainActivity.class),0);
notification.setLatestEventInfo(mContext, name, weather, pi);
이건 위의 코드내용인데 우선 pending intent로 알림을 눌렀을때 이동할 액티비티를 설정해 주세요.
그리고 notification.setLatestEventInfo(컨텍스트 , 타이틀, 내용, 인텐트)를 넣어주시면 됩니다.
setLatestEventInfo는 역시 개발자페이지에서 내용확인 가능합니다.
이것도 역시 notification.builder로 대체되었네용.
notification.flags=Notification.FLAG_AUTO_CANCEL;
그리고 알림바의 속성을 설정하는 옵션입니다. FLAG_AUTO_CANCEL로 설정하면 위 그림과같이 알림으로 뜹니다.
이 알림은 삭제가 가능하고요, 만약 진행중으로 띄우실려면 아래의 플래그를 쓰세용.
notification.flags=Notification.FLAG_ONGOING_EVENT;
개발자페이는 꼭 한번 가보세요 여러 옵션들이 많습니다.
마지막으로 전 안썼지만 많이쓰는 사운드및 진동 옵션을 쓰실려면 아래내용을 추가해 주세요.
notification.flags=Notification.DEFAULT_SOUND|Notification.DEFAULT_VIBRATE;
'Study > Android' 카테고리의 다른 글
속도빠른 안드로이드 에뮬레이터 제니모션 (0) | 2015.02.11 |
---|---|
TimerTask and Timer 를 이용한 간단한 타이머 만들기 (0) | 2015.02.11 |
Android Alarm manager (알람매니저)를 이용한 디지털 시계위젯 (0) | 2015.02.11 |
android app 에 admob 광고 추가하기 (0) | 2015.02.11 |
Android Widget (안드로이드 위젯) 만들기 (0) | 2015.02.11 |