2017-06-03 44 views
0

首先,我知道它已從26.0.1棄用,所以我跟着一些鏈接,它將我帶到here。我正在關注this教程,但該程序的某些部分現在已棄用,解決方案i在第一個鏈接找到解決問題從api 21。所以如何使用這個預棒棒糖設備。如何使用getSupportMediaController

回答

0

我剛剛實現了那篇文章中描述的大部分內容。我會說跳過MediaSessionCompat並使用正常的服務。 MediaSessionCompat 沒有很好的文檔記錄,並沒有太多關於如何使用它們或例子的文字。

我會建議只與「正常」的服務。有兩種服務,綁定和開始。在我的情況下,我必須開始並綁定我的服務。僅當需要從服務回調時才需要綁定部分。試一試最簡單的東西,hello world,如果服務lifecylce的行爲像你想開始把自己的代碼放進去一樣。

Intent intent = new Intent(this, BackgroundAudioService.class); 
    startService(intent); 
    bindService(intent, mConnection, Context.BIND_AUTO_CREATE); 

和綁定完成後,你可以在這裏做你需要的工作:我所做的開始+綁定服務

這裏例如

private ServiceConnection mConnection = new ServiceConnection() { 

    @Override 
    public void onServiceConnected(ComponentName className, IBinder service) { 
     // relevant work for your service/activity 
    } 

    @Override 
    public void onServiceDisconnected(ComponentName arg0) { 
     // cleanup, releasing of resources 
    } 
}; 

的方式啓動和使用的通知儘管我覺得這篇文章很有用並且工作得很好。

對於我來說,這個artice的問題在於,在從教程運行代碼後,只要從1個活動中導航離開,服務就會死亡+通知就會消失。

+0

應該避免鏈接應答:[answer] – Y0da