Sobes.tech
Junior — Middle

Ҳайриятҳои хизматрасониро чӣ гуна мешиносӣ ва бо онҳо чӣ гуна ҳамкорӣ мекунӣ?

sobes.tech AI

Ҷавоб аз AI

Дар Android мавҷуд аст чанд намуди хидмат:

  1. Хидмати дар пеши экран (Foreground Service) — хидмате, ки корбар бо огоҳинома равшан мебинад. Барои вазифаҳое, ки талаб мекунанд, ки ҳамеша фаъол бошанд, истифода мешавад, масалан, мусика ё наваригатсия.

  2. Хидмати пасзамана (Background Service) — дар пасзамана бе огоҳинома кор мекунад, аммо бо маҳдудиятҳо дар версияҳои навтарини Android бо сабаби оптимизатсияи батарея.

  3. Хидмати маҳкам (Bound Service) — хидмате, ки бо он дигар компонентҳо (масалан, Activity) барои муошират тавассути интерфейс пайваст мешаванд.

  4. IntentService (худкуҳ, ҳоло тавсия дода мешавад, ки WorkManager истифода шавад) — хидмат барои иҷрои вазифаҳо дар як ҷараёни алоҳида, ки пас аз иҷро худ ба худ бозмедорад.

Муошират бо хидматҳо:

  • Ифтитоҳи хидмат:

    val intent = Intent(this, MyService::class.java)
    startService(intent) // барои хидматҳои пасзамана ё пеши экран
    
  • Пайвастшавӣ ба хидмат:

    bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE)
    
  • Дастгирии хидмат:

    stopService(intent)
    

Барои вазифаҳои дарозмуддат ё таъхирдошта, тавсия дода мешавад, ки WorkManager ё JobScheduler истифода шавад, зеро онҳо маҳдудиятҳои системаро ба назар мегиранд ва кори пасзаманаҳоро оптималӣ мекунанд.