DreiDreiDrei
DreiDreiDrei

Reputation: 41

Audio will still play even if I am using other app or the screen is locked

I am creating an app similar to other audio streaming apps. Is there a way to let a third party player stream music even though the screen of the mobile phone is locked or I am using other application?

Upvotes: 0

Views: 31

Answers (1)

Rakshit Sorathiya
Rakshit Sorathiya

Reputation: 679

You require to create the unbound service to play the media in background while other app may be opened or screen might be lock.

You can refer this for understanding in detail regarding use of services: https://developer.android.com/guide/components/services.html

Like this:

Create Intent first

Intent svc=new Intent(this, BackgroundSoundService.class);
startService(svc);

Create class for the service to run in the background:

public class BackgroundSoundService extends Service {
private static final String TAG = null;
MediaPlayer player;
public IBinder onBind(Intent arg0) {

    return null;
}
@Override
public void onCreate() {
    super.onCreate();
    player = MediaPlayer.create(this, R.raw.idil);
    player.setLooping(true); // Set looping
    player.setVolume(100,100);

}
public int onStartCommand(Intent intent, int flags, int startId) {
    player.start();
    return 1;
}

public void onStart(Intent intent, int startId) {
    // TO DO
}
public IBinder onUnBind(Intent arg0) {
    // TO DO Auto-generated method
    return null;
}

public void onStop() {

}
public void onPause() {

}
@Override
public void onDestroy() {
    player.stop();
    player.release();
}

@Override
public void onLowMemory() {

}
}

Do not forget to call service in manifest file

<service android:enabled="true" android:name=".BackgroundSoundService " />

Hope this helps you.

Upvotes: 1

Related Questions