MediaRouteButton无法实例化

时间:2013-08-10 04:50:57

标签: google-cast chromecast

我将CastSampleActivity设置为GoogleCastSdkAndroid,mediarouter和appcompact作为依赖项,我可以在手机上构建和启动。但是,生成的应用中不会显示chromecast图标:

http://i.stack.imgur.com/KxMFJ.png(截图)

当我打开activity_cast_sample.xml时,我看到以下内容:

The following classes could not be instantiated:
- android.support.v7.app.MediaRouteButton (Open Class, Show Error Log)

这会导致堆栈跟踪:

java.lang.NullPointerException
at com.android.layoutlib.bridge.android.BridgeContext.resolveThemeAttribute(BridgeContext.java:278)
at android.content.res.Resources_Theme_Delegate.resolveAttribute(Resources_Theme_Delegate.java:64)
at android.content.res.Resources$Theme.resolveAttribute(Resources.java:1426)
at android.support.v7.app.MediaRouterThemeHelper.isLightTheme(MediaRouterThemeHelper.java:51)
at android.support.v7.app.MediaRouterThemeHelper.createThemedContext(MediaRouterThemeHelper.java:30)
at android.support.v7.app.MediaRouteButton.<init>(MediaRouteButton.java:121)
at android.support.v7.app.MediaRouteButton.<init>(MediaRouteButton.java:117)

任何人都知道发生了什么事?

这是来自GitHub的完全未经修改的CastSampleActivity,当然除了我的app_id。我可以从Youtube,Netflix等演员......

2 个答案:

答案 0 :(得分:0)

实例化错误是正常的。

您是否以任何方式更改了清单或主题设置?

答案 1 :(得分:0)

我也有这个问题,这是不正确的项目设置。你在用Gradle吗?如果你是,那么你的build.gradle文件有点像:(记得将googlecastsdk库放在你的libs文件夹中)

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.1+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 18
    buildToolsVersion "18.1.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 16
    }
}

dependencies {
    compile "com.android.support:appcompat-v7:18.0.+"
    compile "com.android.support:mediarouter-v7:18.0.+"
    compile files('libs/GoogleCastSdkAndroid.jar')
}