2016-03-02 43 views
-1

所以,我有MP3播放器。我想,所有的播放都是不熟練的,所以它不會停下來。 我試過的服務,我有幾個問題:與活動Android的mp3服務

1.業務通信:
我就可以開始與數據傳遞的意圖
服務我可以通過廣播resiever數據發送服務到活動
如何將數據從活動發送到服務
我真的需要做這樣

@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歲=(
我會任何幫助^ _^
至少,比方說,我需要用感激:服務或intentservice

+0

我認爲我需要綁定服務:/ – Masafi

回答

0

你問太多。在這個線程的問題,我會盡我所能回答儘可能多的,因爲我似乎無法理解你在說什麼

1.服務通信活動: 如果你想要一個之間進行通信活動和服務使用一個BroadcastReceiver

2.背景: 我不知道你在這裏的真正含義,我猜你想要的東西,當你的應用程序去背景不會被殺死。爲此使用Service。當您的應用不在前臺時,服務被設計用於執行代碼。它在主線程上就像一個活動一樣運行,當系統內存不足時它可能會被終止。

3.我需要一個服務嗎? 是的!除非你想你的歌(S)停止播放時,您的應用程序轉到後臺

4.聲明:閱讀Android developer guide

+0

1.如何從活動發送數據到正在運行的服務?我的意思是不熟練的服務。但是簡單的服務會被殺死(當我長按主頁按鈕並殺死我的應用程序,服務也會停止),那麼如何創建不需要的服務? – Masafi

+0

正如我所說的那樣使用BroadcastReceiver。 [這](http://www.tutorialspoint.com/android/android_broadcast_receivers。HTM)教程將告訴你如何 –

+0

謝謝,我試過BR來做到這一點,但它沒有奏效。我會試試這個東西 – Masafi