【问题标题】:Android mp3 service安卓mp3服务
【发布时间】:2016-03-02 15:12:55
【问题描述】:

所以,我有 mp3 播放器。我想要,所有的播放都不会被杀死,所以它不会停止。 我试过服务,我有几个问题:

1.与活动的服务通信:
我可以通过意图传入的数据启动服务
我可以通过广播存储数据服务发送到活动
如何将数据从活动发送到服务
我真的需要这样做吗

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    Flags flag = Flags.values()[intent.getIntExtra("flag", 0)];
    switch(flag) {
        case Start:
            //Starts the playback
            break;
        case Repeat:
            //Do stuff
            stopSelf() //How to stop it right: stop this, but leave first call?
            break;
        case Shuffle:
            //Do stuff
            stopSelf()
            break;
        case Move:
            //Do stuff
            stopSelf()
            break;
        case Song:
            //Do stuff
            stopSelf()
            break;
        case GetData:
            //Do stuff
            stopSelf()
            break;
        default:
            //Do stuff
            stopSelf()
            break;
    }
    return START_STICKY;
}

每条消息都让我开始新的服务,带来所有后果

2。不朽的服务: 对于不朽的服务,我是否需要使用意图服务。或不?我没有找到太多关于它的文档。

4.通知:
另外,我想做类似notification with control-buttons

5.文档:
我根本没有找到太多的服务文档。我发现的是 2-3 岁 =(
如果有任何帮助,我将不胜感激^_^
至少,比如说,我需要使用什么:服务或意图服务?

【问题讨论】:

  • 我认为我需要绑定服务:/

标签: java android android-service audio-player android-music-player


【解决方案1】:

你在这个帖子里问的问题太多了。我会尽力回答,因为我似乎无法理解你在说什么。

1.与活动的服务通信: 如果您想在活动和服务之间进行通信,请使用 BroadcastReceiver

2.背景: 我不知道你在这里的真正意思是什么,我猜你想要的东西在你的应用程序进入后台时不会被杀死。为此,请使用Service。服务旨在在您的应用程序不在前台时执行代码。它就像一个活动一样在主线程上运行,当系统内存不足时它可能会被杀死

3.我需要服务吗? 是的!!除非您希望在应用进入后台时停止播放歌曲

4.通知: 阅读 android developer guide

【讨论】:

  • 1.如何将数据从活动发送到正在运行的服务? 2. 我的意思是不死的服务。但是简单的服务被杀死了(当我长按主页按钮并杀死我的应用程序时,服务也停止了),那么如何创建未杀死的服务?
  • 按照我说的使用广播接收器。 This 教程将告诉你如何
  • 谢谢,我试过 BR 来做,但没有用。我会试试这个东西
  • 我需要使用intentservice吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-25
  • 2010-10-22
  • 2013-03-31
  • 2015-08-16
  • 1970-01-01
相关资源
最近更新 更多