마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Activity 와 Service 통신시 Application 클래스를 통해 주고 받는 형식은 안전한가?

0 추천
안녕하세요. Activity 와 Service 통신시 Application 클래스를 통해 주고 받는 형식은 안전한가? 에 대한 질문입니다.

 

제가 어떤 소스를 봤는데 서비스에서 엑티비티로 값을 주는데 Application을 상속하여 만든 곳을 통해 값을 넘겨 주더라고여

서비스에서 아래와 같이 호출하면 MyApplication에서 값을 받아 Activity로 값을 넘겨 주는 형식입니다.

MyApplication app = (MyApplication)getApplicationContext();

app .recv( String str );

그리고 Activity는 생성 시 MyApplication 에게 자신의 객체를 넘겨 주고 있습니다.

뭔가 참신하긴 한데-_-.. 이렇게 사용하는건 본적이 없어서 과연 안전한 방법인가에 대해 문의합니다.
여룽이 (4,750 포인트) 님이 2016년 1월 15일 질문

1개의 답변

0 추천
Application클래스는 어떤 정보를 공유할 수 있는 기능을 합니다.

따라서 액티비티 간에 정보를 공유할 수도 있고, 액티비티-서비스 간에 공유할 수도 있습니다.

원래 Application클래스의 목적 자체가 그런 것이기에 해당 클래스를 어떻게 얼마나 쓰느냐는 프로그래머의 취향 문제라고도 볼 수 있습니다.

다만, Application 클래스를 이용한다고 해도 메모리에서 사라지기 전에 정보를 저장하고, 복수개의 액티비티/서비스에서 저장/읽기를 하면서 발생하는 순서 문제 등은 존재하는 것이므로 이에 대한 고려는 해주셔야 합니다
cc1232 (35,280 포인트) 님이 2016년 1월 15일 답변
방법론 자체에는 문제가 없다는 거군요! 감사합니다.
...