我正在创建一个类似于其他音频流媒体应用的应用。有没有办法让第三方播放器流式传输音乐,即使手机屏幕被锁定或我正在使用其他应用程序?
答案 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 " />
希望这会对你有所帮助。