即使我正在使用其他应用程序或屏幕被锁定,音频仍将播放

时间:2018-01-15 10:41:50

标签: android audio-streaming

我正在创建一个类似于其他音频流媒体应用的应用。有没有办法让第三方播放器流式传输音乐,即使手机屏幕被锁定或我正在使用其他应用程序?

1 个答案:

答案 0 :(得分:1)

您需要创建未绑定的服务才能在后台播放媒体,而其他应用可能会被打开或屏幕可能会锁定。

您可以参考此处了解有关服务使用的详细信息:https://developer.android.com/guide/components/services.html

像这样:

首先创建意图

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

为要在后台运行的服务创建类:

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() {

}
}

不要忘记在清单文件中调用服务

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

希望这会对你有所帮助。