آموزش سرویس (Service) در برنامه نویسی اندروید

سلام دوستان در این سری از آموزش برنامه نویسی اندروید به آموزش سرویس (Service) در برنامه نویسی اندروید می پردازیم در این آموزش یاد می گیرید که اصلا سرویس (Service) چیست ؟ و به چه کاری می آید و در کجا ها استفاده می شود. در این آموزش متوجه می شوید که سرویس چه نقش مهمی را برای ما بازی می کند در این آموزش یاد می گیرد که چگونه با استفاده از سرویس می توانید task های طولانی را بدون اینکه UI را درگیرد کنید انجام دهید در ادامه با ما همراه باشید.
 
Service ( سرویس ) چیست ؟
سرویس یکی از major component  یا کامپوننت اصلی در اندروید است .
چه کاری انجام میدهد ؟
همانطور که در قل گفتیم برای انجام Task یا Operation های طولانی از Task استفاده می شود و بدونی این که مزاحم کاربر شود در Background کار خود را انجام میدهد.
در کجا استفاده می شود ؟
هر جایی که Task های طولانی وجود داشته باشد یا Task شروع و پایان مشخصی نداشته باشد از Task استفاده می شود مثل Notification یا سرویس های پیامک و کلی چیز دیگر.
اساسا دو حالت کلی در هر سرویسی وجود دارد.

  • Started  یا  startService ()
  • Bound یا  bindService()
  • UnBound یا onUnbind()
  • Rebound یا onRebind()
  • onCreate()
  • onDestroy()

Started

یک سرویس باید شروع شود تا به انجام کار بپردازد این شروع هم در اکتیویتی یا در فرگمنت اتفاق می افتد.

Bound

زمانی که بخواهید با یک وب سرویس ارتباط برقرار کنید نیاز است تا از Bound استفاده کنید تا سرویس بتواند ارتباط برقرار کند.

UnBound

زمانی که Connection بین سرور و کلاینت می خواد قطع شود از UnBound استفاده می شود.

Rebound

برای اتصال دوباره بین سرور و اپ باید از Rebound استفاده شود.

onCreate

زمانی که یک سرویس برای اولین بار اجرا می شود.

onDestroy

زمانی که یک سرویس نابود یا به پایان می رسد.
در ادامه یک سرویس ساده را مثال میزنیم
ابتدا یک فایل به نام TService.java ایجاد کنید و کد های زیر را در آن قرار دهید. (این کد اصلی نیست فقط می خوام با ساختار یک سرویس آشنا شوید.)

و کد مربوط به MainActivity.java همانند زیر می شود.

حالا زمان آن است سرویس اصلی را ایجاد کنیم یک فایل به نام MyService.java ایجاد کرده و کد های زیر را در آن قرار دهید.

و سپس در بخش AndroidManifest.xml سرویس خود را ریجیستر کنید.

 
این آموزش هم به پایان رسید.
 
موفق و موید باشید.

مطالعه بیشتر