각각의 Activity들은 Activity Stack으로 관리를 하고 있습니다.
기존의 Activity가 실행중이면서, 새로운 Activity가 발생하게 되면, Activity Stack에서는
현재 실행중인 Activity의 위로 들어가게 됩니다.
이를 다시 정리하자면, Activity가 실행중인지 아닌지는 Activity가 Stack의 Top이냐 아니냐에 따라 현재 실행중인지 아닌지를 결정하게 되는 것입니다.

'안드로이드' 카테고리의 다른 글

View의 계층 구조  (0) 2011.01.10
Activity LifeCycle  (0) 2011.01.10
안드로이드 우선순위  (0) 2011.01.10
어플리케이션의 구성요소  (0) 2011.01.09
Application 의 종류  (0) 2011.01.09
안드로이드 플랫폼에서 자원이 부족하게 될 경우에는 실행되고 있는 프로세스들을 정리하기 시작하게 됩니다.
이를 정리하기 위해서는 다음과 우선순위를 가지는데요. 
자원을 정리할때 우선순위가 낮은 프로세스 부터 처리하게 됩니다.
잠시 알아둘 필요가 있을것 같아서 정리를 하였습니다.

안드로이드 우선순위
1. Foreground에서 실행되고 있는 액티비티를 가진 프로세스
2. 화면에는 보이지만 Foreground는 아닌 액티비티를 가진 프로세스
3. 백그라운드에서 실행되는 액티비티를 가진 프로세스
4. 액티비티 또는 서비스, 브로드 캐스트 리시버를 가지지 않는 Empty 프로세스

'안드로이드' 카테고리의 다른 글

Activity LifeCycle  (0) 2011.01.10
Activity Stack  (0) 2011.01.10
어플리케이션의 구성요소  (0) 2011.01.09
Application 의 종류  (0) 2011.01.09
짱수의 안드로이드 시작  (0) 2011.01.09

안드로이드를 개발을 하다보면 여러 구성요소들이 있습니다.
그 구성요소는 다음과 같습니다.

 1. Activity
 2. Service
 3. Content Providers
 4. Intents
 5. Broadcast Receivers
 6. Notification
보통 위와 같은 구성요소들로 구성되어 있으며, 가장 중점적으로 공부해야될 것은
저의 생각으로는 Activity와 Service 그리고 Intents와 Broadcast Receivers입니다.
나머지 것들은 책을 보거나 인터넷에 자세히 설명이 나와있기도 하지만 저의 경험상으로는
특정한 곳 외에는 잘 사용하지 않기 때문입니다.
하지만 Activity, Service, Intents, Broadcast Receivers는 자주 사용하며, 문제가 발생시에는 대부분 이곳에서 나타나기 때문에 위의 4개는 확실하게 알아둘 필요가 있습니다.

나중에 차차 조금씩 정리를 할 것이지만 간단하게 소개를 하자면 다음과 같습니다.
1. Activity : 안드로이드에서 보통 화면에 보여주는 부분을 구성하는 역활을 합니다.
2. Service : 화면에는 보이지는 않지만 지속적으로 실행을 하는 역활을 합니다.
3. Content Providers : 공유할 수 있는 데이터들의 저장소이며, 이는 DB를 관리합니다.
4. Intents : 간단한 메세지를 전달하는 역활을 하며, 보통 각각의 Activity에 정보를 주거나
                시스템 으로 데이터를 보낼때 사용합니다.
5. Broadcast Receivers : Intent에서는 정보를 보내주는 역활을 했다면,
                                    Broadcast Receivers는 받는 역활을 합니다.
6. Notification : 사용자에게 알려주기 위한 알림 프레임 워크로써, 보통 사용자가
                      게임을 하거나, 문서작업을 하고 있는데, 갑자기 전화가 오거나, 메세지가
                       오면, 전화 수신 화면으로 넘어 가거나 아미면 상단에 문자 메세지 아이콘
                      이 나타납니다. 이러한 역활을 해주는 것이 Notification입니다

이러한 요소들을 안드로이드에서는 보통 Manifast.xml에서 관리를 하는데 아래와 같은 형식으로 사용합니다.

 <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.csjung.helloandroid"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".helloAndroid"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
    <uses-sdk android:minSdkVersion="8" />

</manifest>


일단 Activity만 보였으나 차츰 하나씩 정리를 하면서, 간단한 예를 써놓도록 하겠습니다.

'안드로이드' 카테고리의 다른 글

Activity LifeCycle  (0) 2011.01.10
Activity Stack  (0) 2011.01.10
안드로이드 우선순위  (0) 2011.01.10
Application 의 종류  (0) 2011.01.09
짱수의 안드로이드 시작  (0) 2011.01.09

처음에 시작하기에는 어플리케이션의 종류가 뭐가 중요하냐고 생각이 들수 있습니다.
하지만 조금씩 하다보면 어떤 종류의 어플을 사용해야되는지 고민을 하게 됩니다.
이를 고민하기 위해서는 각각의 어플이 어떤 종류의 어플이 있고 어떤 역할을 해야되는지를
알아야합니다.
여기서 제가 말하고자 하는것은 간단하게 나마 어떤 종류의 어플들이 있는지를 알아야 되지 않을까 생각이 들어서 이렇게 정리를 하였습니다.

Foreground Activity : Foreground에 있을때만 쓸모있는 어플리케이션.
                              화면에 보이지 않을때는 일시 중지됨.
Background Service : 화면에 보이지 않은 채로 실행되는 상호작용이 제한된 어플리케이션.
Intermittent Activity : 백그라운드에서 수행을 하고 있다가 나중에 화면을 통해 사용자에게
                            통지를 함. 일반적인 예로는 미디어 플레이어가 이와 같이 동작함.




'안드로이드' 카테고리의 다른 글

Activity LifeCycle  (0) 2011.01.10
Activity Stack  (0) 2011.01.10
안드로이드 우선순위  (0) 2011.01.10
어플리케이션의 구성요소  (0) 2011.01.09
짱수의 안드로이드 시작  (0) 2011.01.09

이번에 안드로이드를 시작하게 된 개기는 회사를 다니면서 시작하게 되었습니다.
시작한지 얼마되지 않아 아직은 많이 부족한것이 많습니다.
하지만 저의 홈페이지에 찾아주시는 분들께 자신이 아는 부분에 대해서 정보를 공유하고
같이 배워가는 배움의 터가 되었으면 합니다.

'안드로이드' 카테고리의 다른 글

Activity LifeCycle  (0) 2011.01.10
Activity Stack  (0) 2011.01.10
안드로이드 우선순위  (0) 2011.01.10
어플리케이션의 구성요소  (0) 2011.01.09
Application 의 종류  (0) 2011.01.09

+ Recent posts