🏁Activity launch modes
🔰 Nasıl Yönetilir
AndroidManifest.xml
dosyası içerisindeki <activity>
alanının değiştirilmesi ile yönetilir
💠 Activity Özellikleri
Belirtilen
launchMode
değerlerinden biri kullanılırVarsayılan olarak
standart
değeri seçilir
standart
Android'in varsayılan modu
singleTop
Activity, stack'te en tepede ise yeni işlerde yeni activity oluşturulmaz
singleTask
Activity için yeni bir işlem tanımlandığında, işlem yapan activity kullanılır, yeni oluşturulmaz
singleInstance
Activity yalnızca bir kez oluşturulur
<activity
android:name=".SecondActivity"
android:label="@string/activity2_name"
android:parentActivityName=".MainActivity"
android:launchMode="standard">
<!-- More attributes ... -->
</activity>
🏴 Intent flags
Activity attributes gibidir, ama çakışma durumunda bayraklar ele alınır
setFlag()
vegetFlag()
ile kullanılır
singleTop
Activity, stack'te en tepede ise yeni işlerde yeni activity oluşturulmaz
Eğer activity stack'te varsa, onu tepeye alıp, üstündeki her activity'i destroy
eder. FLAG_ACTIVITY_NEW_TASK ile kullanılırsa activity işlemlerini ön plana taşır
👨💼 Yeni Intent Oluşumunu Yönetme
Genellikle
onResume()
'den sonra çalışırgetIntent()
metodu her zaman,Activity
'nin kendiintent
'ini döndürdüğünden bu yapı kullanılırsetIntent()
ile Activity intent'i değiştirilir
@Override
public void onNewIntent(Intent intent) {
super.onNewIntent(intent);
// Use the new intent, not the original one
setIntent(intent);
}
Last updated
Was this helpful?