我試圖自動發現投射設備。這基本上是我見過的關於如何做到這一點的逐字記錄,但是我從來沒有得到onRouteAdded或onRouteSelected的回調。Android Cast - 不返回媒體路由器回調
我試過改變哪些標誌被使用,但沒有得到不同的結果。有時會添加路線,但從未選擇。
private void startSearchForDevicesAndCast() {
MediaRouter router = MediaRouter.getInstance(this);
int count = router.getRoutes().size();
List<MediaRouter.RouteInfo> j = router.getRoutes();
MediaRouteSelector selector = new MediaRouteSelector.Builder().addControlCategory(
CastMediaControlIntent.categoryForCast(getString(R.string.app_id))).build();
router.addCallback(selector, new MediaRouter.Callback() {
@Override
public void onRouteAdded(MediaRouter router, MediaRouter.RouteInfo route) {
super.onRouteAdded(router, route);
Log.i(TAG, "onRouteAdded: ");
router.selectRoute(route);
}
@Override
public void onRouteChanged(MediaRouter router, MediaRouter.RouteInfo route) {
super.onRouteChanged(router, route);
Log.i(TAG, "onRouteChanged: ");
}
@Override
public void onRouteSelected(MediaRouter router, MediaRouter.RouteInfo route) {
Log.i(TAG, "onRouteSelected: ");
super.onRouteSelected(router, route);
}
}, MediaRouter.CALLBACK_FLAG_PERFORM_ACTIVE_SCAN);
}
你採取了什麼行動,你期望的onRouteSelected(被稱爲,並沒有發生? –
@AliNaddaf抱歉,我的問題措辭錯誤。我錯了,並沒有得到onRouteAdded或onRouteSelected的回調。有時候onRouteChanged會返回,但我認爲這只是因爲它已經在前一次的路由列表中,但是路由從來沒有出現過變化,但是我確實看到了它的回調。 – Lucas
好的,讓我寫下步驟;因爲它有點長,我會寫它作爲答案而不是評論。 –