2013-10-16 91 views
0

我一直無法找到一個堅實的答案,因此我希望有人可以幫我一些代碼。我有一個應用程序讓用戶從字符串中選擇一段時間,然後點擊播放按鈕。然後這首歌會播放這段時間,然後停下來。問題是我在一個活動而不是服務中設置了這個集合。我已經找到了如何使用服務來播放和停止歌曲的例子,但我還沒有找到如何做到這一點,並仍然能夠讓用戶能夠選擇歌曲的時間。有人能給我一段代碼,告訴我如何能夠實現服務,而不會失去選擇時間長度的能力嗎?安卓媒體播放器服務與計時器

回答

0

使用可以使用它來設置時間的媒體播放器將多長時間玩

   new CountDownTimer(1000 * lengthOfTime, 1000) { 

        public void onTick(long millisUntilFinished) { 
        } 

        public void onFinish() { 

         if(yourMediaPlayer.isPlaying()){ 
          yourMediaPlayer.stop(); 
          yourMediaPlayer.release(); 
         } 
          } 
        } 
        }.start(); 

創建服務,並使用

Intent it = new Intent(); 
it.setAction("your.package.name.whatEverYourServiceName"); 
startService(it); 

然後在你的清單中添加這個稱呼它:

<service 
     android:name="your.package.name.whatEverYourServiceName" 
     android:label="Your Service Homie" 
     android:process=":my_process" > 
     <intent-filter> 
      <action android:name="your.package.name.whatEverYourServiceName" > 
      </action> 
     </intent-filter> 
    </service> 

這裏是服務樣本:

public class whatEverYourServiceName extends Service{ 


@Override 
public void onStart(Intent intent, int startId){ 
super.onStart(intent, startId); 

//Add your code here mate 

} 


@Override 
public void onDestroy(){ 
    super.onDestroy(); 

    //Add what do you want to do here when the service is stop like do a backflip 

} 

@Override 
public IBinder onBind(Intent arg0) { 

    return null; 
} 

} 

如果您使用的是eclipse,只需按ctrl + shift + o即可自動導入包。

+0

我有它的工作設置時間,我的問題是,我需要聲音從服務而不是活動和Idont知道如何做impliment服務 – user2869238

+0

我編輯了我的答案。 – RussVirtuoso

+0

在服務代碼中發生了什麼,或者在創建類後是否爲空?並會幫助你,如果我發佈我的主要活動Java類 – user2869238