티스토리 뷰

반응형

PendingIntent는 타 애플리케이션을 제어하는 역할을 수행함. 

 

 

 

 

Broadcast로 전달하는 것, Activity에서 받는 것, Service로 받는 것이 있음.

 

*Broadcast : Android 앱에서는 게시-구독 디자인 패턴(Publish-subscribe pattern)과 유사한 브로드캐스트 메시지를 받거나 보낼 수 있음. 

관심있는 이벤트가 발생할 때 이러한 브로드캐스트가 전송. 

https://developer.android.com/guide/components/broadcasts

 

브로드캐스트 개요  |  Android Developers

Android 앱은 Android 시스템 및 기타 Android 앱에서 게시-구독 디자인 패턴과 유사한 브로드캐스트 메시지를 받거나 보낼 수 있습니다. 관심 있는 이벤트가 발생할 때 이러한 브로드캐스트가 전송됩니다. 예를 들어 Android 시스템은 시스템 부팅 또는 기기 충전 시작과 같은 다양한 시스템 이벤트가 발생할 때 브로드캐스트를 전송합니다. 또한 앱은 맞춤 브로드캐스트를 전송하여 다른 앱이 관심을 가질만한 사항(예: 일부 새로운 데이터가 다운로드

developer.android.com

*Service : 백그라운드에서 오래 실행되는 작업을 수행할 수 있는 애플리케이션의 구성요소이며, 사용자 인터페이스를 제공하지 않음.

https://developer.android.com/guide/components/services?hl=ko

 

서비스 개요  |  Android Developers

Service는 백그라운드에서 오래 실행되는 작업을 수행할 수 있는 애플리케이션 구성 요소이며 사용자 인터페이스를 제공하지 않습니다. 다른 애플리케이션 구성 요소가 서비스를 시작할 수 있으며, 이는 사용자가 다른 애플리케이션으로 전환하더라도 백그라운드에서 계속해서 실행됩니다. 이외에도, 구성 요소를 서비스에 바인딩하여 서비스와 상호작용할 수 있으며, 심지어는 프로세스 간 통신(IPC)도 수행할 수 있습니다. 예를 들어 한 서비스는 네트워크 트랜잭션을 처리

developer.android.com

 

1) Broadcast 사용법

- Broadcast로 전달하려는 부분 

intent를 통한 전달메시지 생성, 이를 PendingIntent의 getBroadcast 로 설정

- Broadcast로 전달된 메시지를 받는 부분 

Broadcast로 전달된 메시지를 받을 Receiver 클래스를 생성 (BroadcastReceiver 를 상속받은 클래스)

BoradcastReceiver를 상속받으면 onReceive(Context, Intent)가 생성되며, intent는 전달하고자 했던 메시지.

- AndroidManifest.xml 설정 부분

PendingIntent를 통해 메시지를 전달받기 위해서는, 전달받고자 하는 타 애플리케이션의 일부분( 여기서는 BroadcastReceive )에 대한 AndroidManifest.xml 설정이 필요. 

recevier 태그 내에 android:exported 를 true로 설정하여 외부에서 호출하는 메시지를 받을 수 있도록 함.

2) Activity 사용법

- Activity로 전달하려는 부분

Broadcast 설정과 마찬가지. 단, 메시지를 전달받는 부분이 Activity 형태이기 때문에 getActivity로 설정

-Activity로 전달된 메시지를 받는 부분

Activity로 전달받을 수 있도록 설정했으므로 Activity로 전달받을 클래스를 생성.

ThirdActivity 생성 ( Activity를 상속받음 )

-AndroidManifest.xml 설정 부분

외부에서 해당 Activity(ThirdActivity) 로 전달받기 위해서는 AndroidManifest.xml에서 Activity에 대한 android:exported를 true로 설정하여, 외부에서 발생한 메시지를 전달받을 수 있도록 함. 

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함