Junior — Middle
Push bildiri ilə müəyyən bir Fragment-ə keçid necə həyata keçirilə bilər?
sobes.tech Süni İntellekt
AI-dan cavab
Push bildirişindən istifadə edərək müəyyən bir Fragment-ə keçmək üçün adətən əlavə məlumatlar (extras) ilə Intent istifadə olunur, bu Intent Activity-ə ötürülür və sonra Activity hansı Fragment-i göstərəcəyinə qərar verir.
Təxminən algoritm:
- Push bildirişində, istənilən Fragment-ə işarə edən məlumatlar (məsələn, string identifikatoru və ya enum) ötürün.
- Bildirişə tıklama hadisəsini idarə edən metodda (PendingIntent), Activity-ni başlatmaq üçün Intent yaradın.
- Activity-də, onCreate və ya onNewIntent metodunda, Intent-dən məlumatları oxuyun və lazım olan Fragment ilə əvəz edin.
Kod nümunəsi:
// Bildiriş yaradarkən
val intent = Intent(context, MainActivity::class.java).apply {
putExtra("target_fragment", "profile")
}
val pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT)
// MainActivity-də
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val targetFragment = intent.getStringExtra("target_fragment")
if (targetFragment != null) {
val fragment = when(targetFragment) {
"profile" -> ProfileFragment()
"settings" -> SettingsFragment()
else -> DefaultFragment()
}
supportFragmentManager.beginTransaction()
.replace(R.id.fragment_container, fragment)
.commit()
}
}
Beləliklə, bildirişə tıkladıqda, istifadəçi birbaşa istənilən ekrana yönləndiriləcək.