broadcastreceiver 예제

다음 예제 매니페스트 파일은 위의 예제 브로드캐스트 수신기를 등록합니다: 이 장의 나머지 는 Android Studio 기반의 브로드캐스트 의도 예제를 만들어 작동합니다. 첫 번째 인스턴스에서는 사용자 지정 브로드캐스트 의도를 실행하기 위한 간단한 응용 프로그램이 만들어집니다. 그런 다음 브로드캐스트가 감지되면 Android 장치의 디스플레이에 메시지를 표시하는 해당 브로드캐스트 수신기가 생성됩니다. 마지막으로, 브로드캐스트 수신기는 외부 전원이 장치에서 연결이 끊어졌다는 시스템의 알림을 감지하도록 수정됩니다. 브로드캐스트 수신기는 단순히 다른 응용 프로그램이나 시스템 자체의 브로드캐스트 메시지에 응답합니다. 이러한 메시지는 언젠가 이벤트 또는 의도라고 합니다. 예를 들어 응용 프로그램은 다른 응용 프로그램에서 일부 데이터가 장치에 다운로드되어 사용할 수 있음을 알리기 위해 브로드캐스트를 시작할 수 있으므로 이 통신을 가로채 적절한 브로드캐스트 수신기입니다. 작업. 다음 스니펫은 브로드캐스트 수신기를 프로그래밍 방식으로 등록하는 샘플 예제를 보여 주다. 보류 중인 의도는 다른 응용 프로그램에 제공하는 토큰입니다. 예를 들어 알림 관리자, 경보 관리자 또는 기타 타사 응용 프로그램).

이렇게 하면 다른 응용 프로그램에서 미리 정의된 코드 조각을 실행하기 위해 응용 프로그램의 권한을 복원할 수 있습니다. 하위 클래스 브로드캐스트 수신기 및 구현 onReceiver(컨텍스트, 의도). 다음 예제의 브로드캐스트 수신기는 브로드캐스트 내용을 로그및 표시합니다: 많은 앱이 매니페스트에서 동일한 브로드캐스트를 수신하도록 등록한 경우 시스템이 많은 앱을 실행하여 두 장치에 상당한 영향을 줄 수 있습니다. 성능 및 사용자 경험을 제공합니다. 이를 방지하려면 매니페스트 선언보다 컨텍스트 등록을 사용하는 것을 선호합니다. 경우에 따라 Android 시스템 자체가 컨텍스트 등록 수신기의 사용을 강제합니다. 예를 들어 CONNECTIVITY_ACTION 브로드캐스트는 컨텍스트 등록된 수신기에만 전달됩니다. 다음 예제에서는 Android 매니페스트 파일에서 BOOT_COMPLETED 이벤트에 대한 등록을 보여 줍니다.

이 장에서는 브로드캐스트 의도 및 수신기에 대한 개요를 제공하는 것 외에도 브로드캐스트 의도를 전송하고 사용자 지정 및 시스템 브로드캐스트 의도를 모두 듣기 위해 브로드캐스트 수신기를 구현하는 예제를 통해 작업했습니다. Android 앱은 게시 구독 디자인 패턴과 유사하게 Android 시스템 및 기타 Android 앱에서 브로드캐스트 메시지를 보내거나 받을 수 있습니다. 이러한 브로드캐스트는 관심 있는 이벤트가 발생할 때 전송됩니다. 예를 들어 Android 시스템은 시스템이 부팅되거나 장치가 충전을 시작할 때와 같이 다양한 시스템 이벤트가 발생할 때 브로드캐스트를 보냅니다. 예를 들어 앱은 사용자 지정 브로드캐스트를 전송하여 다른 앱에 관심이 있을 수 있는 항목(예: 일부 새 데이터가 다운로드되었음)을 알릴 수도 있습니다. 컨텍스트 에 등록된 수신기는 등록 컨텍스트가 유효한 한 브로드캐스트를 수신합니다. 예를 들어 활동 컨텍스트 내에서 등록하는 경우 활동이 소멸되지 않는 한 브로드캐스트를 받게 됩니다.

0saves
If you enjoyed this post, please consider leaving a comment or subscribing to the RSS feed to have future articles delivered to your feed reader.

Comments are closed.