19 września 2011

Początkowy ekran aplikacji androidowej - o intent-filter

Nie tak dawno temu zastanawiałem się nad sposobem, w jaki Android wybiera główny ekran aplikacji, co wiedziałem, że jest reprezentowane przez aktywność (ang. activity) - podklasę android.app.Activity. Każda "odsłona" widoku to kolejna aktywność na stosie wyświetlanych ekranów. Chcesz coś wyświetlić użytkownikowi, stwórz odpowiednią aktywność.

Pamiętaj: Aktywność musi być zarejestrowana w pliku konfiguracyjnym aplikacji androidowej AndroidManifest.xml przez znacznik <activity> (z jedynym wymaganym elementem android:name).

Wyświetlenie widoku odbywa się przez metodę android.content.Context.startActivity(Intent intent). Aktywność (widok, ekran) jest podklasą Context.

Aplikacja androidowa może posiadać wiele ekranów (aktywności), a wybór tego jednego, początkowego odbywa się przez znacznik <intent-filter> w ramach aktywności, w pliku AndroidManifest.xml:
<activity android:name="...">
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>
Podczas tworzenia aplikacji w Eclipse ADT czy z linii poleceń z android, jesteśmy pytani o nazwę głównej aktywności, która staje się właśnie początkowym ekranem użytkownika przez określenie go z <intent-filter> w AndroidManifest.xml.

Teraz wszystko jasne. Nie mam więcej pytań. A Ty?