MediaPlayer的服务的Android(MediaPlayer Service Android

2019-07-17 20:00发布

我是新来的Android系统。 我创建了媒体播放器服务,以便它可以继续播放歌曲,即使我关闭应用程序。 我创建活动媒体播放器,它是为所有喜欢播放,暂停,下一个,上,搜索栏的功能,还包括oncompletionlistener。 所有做工精良。 但现在我想,所有应该由服务来管理。

我已经创建的MyService类:

public class MyService extends Service {

    public static MediaPlayer mp;

    @Override
    public IBinder onBind(Intent intent) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public void onCreate() {
        mp = new MediaPlayer();     
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {  
        return START_STICKY;
    }

但在我的玩家活动我创建的ArrayList为的SongList从我正在currentsongIndex,并通过它我维护着所有的功能,例如下一个,上和所有..现在在服务我如何得到这还需要在我的活动的SongList? ? 我应该在哪里创建MediaPlayer对象意味着服务或活动?

对于MediaPlayer的我已经下文称http://www.androidhive.info/2012/03/android-building-audio-player-tutorial/ 。 对于我的媒体播放器的代码,你可以参考这个网站。 谢谢。 Pleaze清楚我的疑问。 我感到很困惑。 尽快回复我。

Answer 1:

你是在正确的轨道上。 我已经适应了从SDK样本; 这就是我如何做到这一点,它的伟大工程。 从你的ArrayList(在你的活动不从服务)的调用

onListItemClick

并开始启动该音乐服务的意图:

startService(new Intent(MusicService.ACTION_PLAY));

在你的清单,你将需要添加:

 <intent-filter>
            <action android:name="com.blah.blah.action.PLAY" />
           <xxx xxx> 
 </intent-filter>

当然在你的音乐服务,你需要接受的意图:

public int onStartCommand(Intent intent, int flags, int startId) {
    String action = intent.getAction();
    if (action.equals(ACTION_PLAY))
        processPlayRequest();
  }

一定要加意图的跳跃,后退,停止等。让我知道,如果这有助于。



Answer 2:

获取该应用程序在后台运行,应该由“服务”本身得到照顾。
试试下面这个例子http://www.vogella.com/articles/AndroidServices/article.html
服务被设计成在后台工作。



Answer 3:

我经历同样的事情去了! 这是一个长途制定甚至一个真正伟大的MP3播放器应用程序。 答案是很长。

这里有一些资源,真正帮助了我。 Android已经在他们的开发文档这事一个文章:

http://developer.android.com/guide/components/services.html

注意它说大约在前景势必服务和运行这篇长文的底部。

此外,管理球员的状态是什么原因造成最让我头疼。

你也想看看线程,因为产卵新的服务将仍然在主UI线程执行的一切,听起来疯狂,但却真实。 看看在ExecutorService的管理线程池。 我希望我能告诉你,这是比较容易。

不幸的是大多数的来自全国各地的网络,但与Android服务我的正规培训来自一个付费网站:

http://www.pluralsight.com/training/Courses/TableOfContents/android-services

这是我认为所有的程序员一个很好的资源,但有关于Android编程那些只在其它教程网站了简短的许多方面很大的部分。

在Vogella的资源也不错,上面提到的。



文章来源: MediaPlayer Service Android