하루플스토리
Home
  • 전체보기 (253)
    • 개발 (104)
      • Android (68)
      • IOS (1)
      • 코딩테스트 (34)
      • 딥러닝 (1)
    • 블로그 (9)
      • 공지사항 (4)
      • 이슈, 유머 (5)
    • 일상 (17)
      • 일상 (9)
      • 전자제품 (7)
      • 사진 (1)
    • 메이플 (120)
      • 메이플스토리 (120)
Home
  • 전체보기 (253)
    • 개발 (104)
      • Android (68)
      • IOS (1)
      • 코딩테스트 (34)
      • 딥러닝 (1)
    • 블로그 (9)
      • 공지사항 (4)
      • 이슈, 유머 (5)
    • 일상 (17)
      • 일상 (9)
      • 전자제품 (7)
      • 사진 (1)
    • 메이플 (120)
      • 메이플스토리 (120)
블로그 내 검색
Github

하루플스토리

안드로이드 개발자 하루플 입니다 GitHub 놀러와주세요!😊

  • 개발/Android

    [Kotlin] 안드로이드스튜디오 BroadcastReceiver

    2023. 2. 26.

    by. 하루플스토리

    안녕하세요, 하루플입니다.

     

    이전에 AlramManager에 대해서 알아보았습니다.

    AlramManger를 쓸 때 BroadcaseReceiver를 상속받은 클래스를 활용해야 스마트폰을 재부팅 했을 때나 앱이 종료된 상태에서도 알림을 받을 수 있습니다. 이 BroadcaseReceiver에 대해서 알아보겠습니다.

     

    class NotificationReceiver : BroadcastReceiver() {
    
        override fun onReceive(context: Context?, intent: Intent?) {
            // Create a notification
            val notification = NotificationCompat.Builder(context!!, "channel_id")
                .setContentTitle("Notification Title")
                .setContentText("Notification Text")
                .setSmallIcon(R.drawable.notification_icon)
                .setPriority(NotificationCompat.PRIORITY_DEFAULT)
                .build()
    
            // Show the notification
            val notificationManager =
                context.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager
            notificationManager.notify(0, notification)
        }
    }

    이 코드에서는 BreoadcaseReceiver를 확장하는 NotificationReceiver 라는 클래스를 만들었습니다. 이 클래스는 AlarmManager에 의해 알림 처리를 담당하게 됩니다.

     

    onReceive() 함수는 BroadcaseReceiver가 Intent를 수신할 때 호출됩니다. 즉, 알림을 트리커 하는데 사용됩니다. 함수는 먼저 NotificationCompat.Builder 클래스를 사용하여 알림을 생성합니다. 알림에는 제목, 내용 및 작은 아이콘을 넣을 수 있습니다. 그리고 알림의 우선 순위를 PRIORITY_DEFAULT로 설정합니다.

     

    알림을 만든 후 함수는 NotificationManager 클래스를 사용해 알림을 표시합니다. 알림에는 ID 0 을 할당했고 나중에 필요한 경우 이 ID 를 사용해 취소하는데 사용할 수 있습니다.

     

    이제 Broadcast Receiver에 대해 자세히 살펴보겠습니다.

     

    Broadcast Receiver는 애플리케이션이 시스템 전체의 브로드캐스트 알림을 수신하고 이에 응답할 수 있도록 하는 Android 구성 요소입니다. 브로드캐스트를 사용하여 사용자가 화면을 끄거나 배터리가 낮아지는 등 다양한 시스템 이벤트를 앱에 알릴 수 있습니다.

     

    BroadcastReceiver가 Intent를 호출되는 onReceive() 함수를 재정의해서 원하는 기능을 수행할 수 있습니다. 인텐트에는 수행할 작업과 브로드 캐스트와 관련된 정보가 포함됩니다.

     

    BroadcastReceiver를 사용하려면 매니페스트 파일에서 해당 클래스를 선언해야합니다. BroadcastReceiver는 다음과 같은 다양한 용도로 사용할 수 있습니다.

    • 장치가 재부팅되거나 배터리가 낮아지는 것과 같은 이벤트에 응답
    • 네트워크 연결 변경 모니터링
    • 수신한 SMS 메세지 또는 전화 통화
    • AlramManager를 사용해 백그라운드 작업 트리거

     

     

     

     

    저작자표시 비영리 동일조건 (새창열림)

    '개발 > Android' 카테고리의 다른 글

    [kotlin] 안드로이드스튜디오 Activity에서 Activity 트랜지션 애니메이션 적용  (0) 2023.03.05
    [Kotlin] 안드로이드스튜디오 Fragment에서 Fragment 복합 트랜지션 (여러 애니메이션 동시 적용)  (0) 2023.03.04
    [Kotlin] 안드로이드스튜디오 AlramManager 기능 및 사용방법  (0) 2023.02.25
    이펙티브 코틀린 : 예외를 활용해 코드에 제한을 걸어라  (0) 2023.02.19
    이펙티브 코틀린 : 변수의 스코프를 최소화하라  (0) 2023.02.18

    댓글

    관련글

    • [kotlin] 안드로이드스튜디오 Activity에서 Activity 트랜지션 애니메이션 적용 2023.03.05
    • [Kotlin] 안드로이드스튜디오 Fragment에서 Fragment 복합 트랜지션 (여러 애니메이션 동시 적용) 2023.03.04
    • [Kotlin] 안드로이드스튜디오 AlramManager 기능 및 사용방법 2023.02.25
    • 이펙티브 코틀린 : 예외를 활용해 코드에 제한을 걸어라 2023.02.19
    맨 위로
전체 글 보기
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Powered by ⓒ Kakao Corp.

Designed by Nana
블로그 이미지
하루플스토리

티스토리툴바