2017-02-21 73 views
1

我正在構建可投射到Chromecast和AppleTV設備的應用程序。這些設備的發現正在發揮作用:使用MediaRouter發現ChromeCasts,並使用SSDP發現AppleTV。目前,我有一個常規按鈕,顯示已發現設備的組合列表,但我想讓它使用花哨的投射按鈕。擴展MediaRouteButton行爲

是否有一種優雅的方式來擴展MediaRouteButton以顯示我自己的已發現設備列表,或者我應該使用可繪製的drawable從頭開始創建自己的按鈕?

我知道MediaRouteButton類可以擴展,但我不知道如何將擴展按鈕應用於通過xml聲明的按鈕。我覺得我失去了一些顯而易見的東西,但我還沒有找到它。

回答

2

您應該可以使用MediaRouteProvider APIs來做到這一點。 Cast SDK增加了一個Cast Media Route Provider,你可以爲你感興趣的任何類型的設備構建你自己的提供者(這裏有一個Android sample,它展示了這一點,但我不確定它是如何最新的保持)。如果您想使用CastSDK(v3)來處理連接並建立到兩種類型的設備(Cast SDK自身發現的和通過自己的提供者發現的那些設備)的會話,則應該使用Cast SDK的SessionProvider。有些帖子(如this)詢問在Cast SDK v3中擴展Session和SessionProviders。

+0

謝謝,我會研究這一點。 –

+0

在提到的帖子中沒有解決方案..... – ingsaurabh