Middle
Šta je Task i u kojim slučajevima se koristi?
sobes.tech АИ
Одговор од АИ
Task je jedinica rada u Androidu koja predstavlja skup povezanih Activities. Activities unutar jednog Taska su raspoređene u steku (back stack) u redosledu njihovog otvaranja.
Koristi se za:
- Upravljanje životnim ciklusom Activity: Task određuje vidljivost i dostupnost Activity.
- Navigaciju između aplikacija: Pri pokretanju Activity iz druge aplikacije, ona se obično smešta u njen sopstveni Task.
- Određivanje ponašanja tastera "Nazad": Taster "Nazad" sukcesivno zatvara Activities u trenutnom Tasku.
- Izolaciju Activity: Activities iz različitih Taskova, po defaultu, ne interaguju direktno.
Primeri upotrebe:
- Obična upotreba aplikacije: Otvaranje različitih ekrana (Activities) u okviru jednog Taska.
- Pokretanje galerije iz messenger-a: Galerija se otvara u svom Tasku, a nakon odabira slike, vraćamo se u Task messenger-a.
- Obrada obaveštenja: Otvaranje Activity iz obaveštenja može kreirati novi Task ili koristiti postojeći, u zavisnosti od zastavica namere.
Posebno ponašanje Task:
- Svaki Task može imati samo jednu korensku Activity.
- Novi Task se kreira kada se Activity pokrene sa zastavicom
FLAG_ACTIVITY_NEW_TASK. - Postojeći Task može biti prebačen u prvi plan ako se pozove Activity koja već pripada njemu, sa zastavicama
FLAG_ACTIVITY_SINGLE_TOPiliFLAG_ACTIVITY_CLEAR_TOP.
// Primer pokretanja Activity u novom Tasku
val intent = Intent(this, NewTaskActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
startActivity(intent)