Chromecast for Android MediaRouter getInstance() 导致崩溃

Posted

技术标签:

【中文标题】Chromecast for Android MediaRouter getInstance() 导致崩溃【英文标题】:Chromecast for Android MediaRouter getInstance() causing crash 【发布时间】:2014-09-17 20:18:55 【问题描述】:

所以我一直在关注本教程:http://blog.lemberg.co.uk/developing-chromecast-ready-application-android-platform

我已经完成了包括 2.3.3 第 1 部分在内的所有工作。我的应用程序首先进入登录活动,然后启动到主活动。我希望 Chromecast 按钮仅显示在主要活动中。我的应用在尝试启动 MainActivity 时崩溃了。

我在 OnCreate() 中有这个:

    Log.d("Chromecast", "first");
    mediaRouter = MediaRouter.getInstance(getApplicationContext());
    Log.d("Chromecast", "second");
    mediaRouteSelector = new MediaRouteSelector.Builder().addControlCategory(CastMediaControlIntent.categoryForCast("myappID")).build();
    Log.d("Chromecast", "made it here");

我的应用永远不会到达第二个 Log 调用。

我收到的崩溃是:

09-17 16:06:40.993: W/dalvikvm(27276): VFY: 无法解析 Landroid/support/v7/mediarouter/R$string 中的静态字段 3549 (mr_user_route_category_name);

09-17 16:06:41.009:W/dalvikvm(27276):threadid=1:线程以未捕获的异常退出 (group=0x4171dd40)

有人知道发生了什么吗?谢谢。

【问题讨论】:

【参考方案1】:

确保在项目中包含 android-support-v7-mediarouter 库。 MediaRouter 的框架将不起作用。另外,看看 Cast Companion Library,它将完成将 Cast 集成到 Android 应用程序的大部分工作: https://github.com/googlecast/CastCompanionLibrary-android

【讨论】:

谢谢!是的,我包括了 support-v7-mediarouter 库。我会研究那个链接。

以上是关于Chromecast for Android MediaRouter getInstance() 导致崩溃的主要内容,如果未能解决你的问题,请参考以下文章

为 chromecast 设置 cors 标头

Chromecast API 发件人 - Android 手机

Chromecast - 如何使用 android 为视频添加字幕

来自android的Chromecast不使用样式接收器

在某些 Android 设备上未发现 Chromecast 设备

在android中重新启动应用程序时如何重新连接chromecast设备