본문 바로가기
프로그래밍 놀이터/안드로이드, Java

[android] framework FAQ

by 돼지왕 왕돼지 2013. 7. 24.
반응형


 안드로이드, framework FAQs

 

[android] framework FAQ


하나의 어플에 포함되어 있는 모든 Activity 와 Service 들이 하나의 프로세스에서 동작해?


메니페스트에 android:process 를 따로 기술하지 않는 한 네개의 기본 Component 들 ( Activity, Service, BroadcastReceiver, ContentProvider ) 는 모두 한 프로세스에서 동작한다.




Component 간 Data 공유는 어떻게 해?


Primitive type 들은 Intent.putExtra() 를 통해서 내용전달을 할 수 있다. 

Preference 에 저장하여 공유할수도 있다.

Application 클래스에 저장하여 공유한다.

public static 변수로 공유한다. 이 방법은 추천되지 않는다.

Object 가 Parcelable, Serializable 하다면 Intent.putExtra() 로 전달 가능하다.

Singleton class 를 이용한다. 하지만 이 방법은 life cycle 관리가 어렵다.

File 에 저장하여 공유한다.

SQLiteDB 를 이용하여 데이터베이스를 통해 공유한다.

SQLIteDB와 같은 맥락인 ContentProvider 를 통해 공유한다.







다른 앱의 Service 와 어떻게 메세지를 주고 받을 수 있는가?


이는 다른 앱의 Service 에서 interface 를 제공해야만 가능하다. RemoteCallbackList 클래스를 통해서 구현이 가능하며 Callback 을 등록하고 해제할 수 있다.



반응형

댓글