如何在 Android SDK for Chromecast 中切换活动

Posted

技术标签:

【中文标题】如何在 Android SDK for Chromecast 中切换活动【英文标题】:How do I switch activities in Android SDK for Chromecast 【发布时间】:2015-01-01 19:27:35 【问题描述】:

我正在运行标准的 Chromecast Sender 应用程序。这是我用来连接 chromecast 并转到下一个活动的代码:

查找 Chromecast 效果很好。

    // ===================
    // Configure Cast device discovery
    // ===================      
    mMediaRouter = MediaRouter.getInstance(getApplicationContext());
    mMediaRouteSelector = new MediaRouteSelector.Builder()
            .addControlCategory(
                    CastMediaControlIntent.categoryForCast(getResources()
                            .getString(R.string.app_id))).build();
    mMediaRouterCallback = new MyMediaRouterCallback();

当我点击按钮连接时,切换到一个新活动

/**
 * Callback for MediaRouter events
 */
public class MyMediaRouterCallback extends MediaRouter.Callback 

    @Override
    public void onRouteSelected(MediaRouter router, RouteInfo info) 
        Log.d(TAG, "onRouteSelected");
        // Handle the user route selection.
        mSelectedDevice = CastDevice.getFromBundle(info.getExtras());

        launchReceiver();           

        // CONNECTION ESTABLISHED, SWITCH TO NEW ACTIVITY
        startActivity(new Intent(ConnectActivity.this, MainActivity.class)); 

    


问题现在出在 MainActivity.class 上 - 我似乎失去了与 Chromecast 的连接,尽管我的图标清楚地标记为正在连接

【问题讨论】:

【参考方案1】:

您的连接应该保持在应用程序级别(或通过单例或服务),这样您在更改活动时就不会遇到问题。使用选项卡布局是非常严格的方法。您可以使用CastCompanionLibrary,它会为您处理。

【讨论】:

以上是关于如何在 Android SDK for Chromecast 中切换活动的主要内容,如果未能解决你的问题,请参考以下文章