반응형
개요
이번에는 안드로이드에서 버튼을 클릭할 시 푸시 알람이 오는 것을 해보도록 하겠습니다.
설명
사실 간단하게 NotificationCompat.Builder 만 구현해주면 간단하게 만드실 수 있습니다.
그럼 한번 해보도록 하겠습니다!.
코드
private String createNotification(String user) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "default");
builder.setSmallIcon(R.mipmap.ic_launcher);
builder.setContentTitle("승리자!");
builder.setContentText(user + "님이 승리 하였습니다!");
builder.setDefaults(Notification.DEFAULT_VIBRATE);
builder.setColor(Color.RED);
// 사용자가 탭을 클릭하면 자동 제거
builder.setAutoCancel(true);
// 알림 표시
NotificationManager notificationManager = (NotificationManager) this.getSystemService(Context.NOTIFICATION_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
notificationManager.createNotificationChannel(new NotificationChannel("default", "기본 채널", NotificationManager.IMPORTANCE_DEFAULT));
}
// id값은
// 정의해야하는 각 알림의 고유한 int값
notificationManager.notify(1, builder.build());
return user;
}
코드설명
보통은 간단하게 void로 구현하셔도 되는데 저는 매개변수를 한번 넣어 봤습니다.
알림 내용 밑에부터 설명해드리자면
setDefaults 는 알림을 받는 방법을 택하는 것입니다.
저는 Notification.DEFAULT_VIBRATE 를 사용했는데
진동으로 알림이 오는 것입니다.
( 소리를 원하시면 DEFAULT_SOUND를 입력하세요. )
setPriority는 우선순위.. 즉 중요도를 뜻합니다.
setAutoCancel은 푸시 알림창을 사용자가 터치하였을 때
자동으로 사라지는 가에 대한 내용입니다.
( true면 사라지고, false 면 유지 )
시스템의 NotificationManager를 가져와서 notify() 메소드를 이용해 보내주기만 하면 됩니다.
id값은 정의해야 하는 각 알림의 고유한 번호입니다!
사용 예제
btn_stop_timer.setOnClickListener(new View.OnClickListener() {
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN)
@Override
public void onClick(View v) {
createNotification(p1.getText().toString());
}
}
그럼 이렇게 간단하게 Notification에 대해서 알아보았습니다.
반응형
'안드로이드 > Andorid(안드로이드)' 카테고리의 다른 글
안드로이드 EditText InputFilter() 특정 글자만 입력받게 하기 (1) | 2019.12.18 |
---|---|
Android (안드로이드 Handler 사용) (1) | 2019.12.08 |
Android (안드로이드 카운트다운 Timer) (0) | 2019.12.02 |
Android (안드로이드 xml 사이즈 layout_weight 조절) (0) | 2019.12.02 |
Android (안드로이드 타이틀바 ,상태바 제거) (0) | 2019.12.02 |