Service: Service is an Android component that runs in the background continues to perform long-running operations, network-based operations.
Ex: Playing music
Downloading file
Service runs in the background indefinitely even
if the application is closed.
The lifecycle of a Service:
Services are 2 types.
1) Started
2) Bound
Started Service:
A service is said to be started when a component like Activity calls startService() method. Once it is started, it runs continuously in the background. It can be stopped by stopService() method. Also, the service can stop itself by calling the stopSelf() method of Service.
Bound Service:
A service is bound when a component like Activity calls bindService() method. Once they are bound, data can be passed from service to activity. The client can unbind the service by calling unbindService() method.
Steps to create a Service:
1) Create a subclass of service
2) override onStartCommand method for started service, onBind method for bound service
Ex:
public class MyService extends Service {
private MediaPlayer mp;
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
mp = MediaPlayer.create(this, R.raw.baazigar_o_baazigar);
mp.start();
return super.onStartCommand(intent, flags, startId);
}
@Override
public void onDestroy() {
super.onDestroy();
mp.stop();
}
}
To register the service in manifest inside <application> tag
<service android:name=”.MyService”/>
To start the above Service from Activity:
Intent i = new Intent(this, MyService.class);
startService(i);
To stop the above Service from Activity:
Intent i = new Intent(this, MyService.class);
stopService(i);
Create an Android application to work with Service
Find the source in https://tinyurl.com/latest7am