引用此库https://github.com/iammert/RadioPlayerService我有用于播放/暂停广播的代码
if (!mRadioManager.isPlaying())
mRadioManager.startRadio(RADIO_URL[0]);
else
mRadioManager.stopRadio();
和执行过程的方法
@Override
public void onRadioStarted() {
runOnUiThread(new Runnable() {
@Override
public void run() {
//TODO Do UI works here.
mTextViewControl.setText("RADIO STATE : PLAYING...");
}
});
}
@Override
public void onRadioStopped() {
runOnUiThread(new Runnable() {
@Override
public void run() {
//TODO Do UI works here
mTextViewControl.setText("RADIO STATE : STOPPED.");
}
});
}
我的广播课
public class MyBroadcast extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Intent intent1 = new Intent(context, MainActivity.class);
intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent1);
}
但是在android 7中,当我在5-8分钟后收音机停止播放音乐后关闭屏幕时。我在后台做了另一个例子,这仍然是同一回事。请任何人能建议我如何构建电台应用程序而不受打ze的影响
您必须为此创建前景服务。通常,当任何长时间的进程正在运行(例如下载,播放音乐或vieo等)时,它都会在状态栏和锁定屏幕中创建通知。
注意:仅应将前台服务用于用户希望系统立即执行或不中断的任务。这样的情况包括将照片上传到社交媒体,或者即使音乐播放器应用程序不在前台也可以播放音乐。您不应仅仅为了防止系统确定您的应用程序处于空闲状态而启动前台服务。
https://developer.android.com/guide/components/services.html#Foreground
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句