让 GoogleCast 工作
Posted
技术标签:
【中文标题】让 GoogleCast 工作【英文标题】:Getting GoogleCast to work 【发布时间】:2014-03-13 20:58:59 【问题描述】:到目前为止,我已经尝试创建一个新项目并将 GoogleCast 添加到其中,并让给定的示例在 android Studio 上工作(目前使用 0.3.2,但如果需要,将升级) MacOSX。
但是,此时迁移到 Eclipse 不是一个有效的选择。
我似乎总是遇到一些参考问题,要么给我错误“找不到与给定名称'@style/Theme.AppCompat'匹配的资源。”或与不知道 android.support.v7 所在位置有关的多个编译时错误。
尝试了许多不同的解决方案,例如删除某人提到工作的@style 部分或将 v7 路径设置为相对路径。
虽然我无法完成最后一个,但不知道如何在 AS 中积极地做到这一点,也没有足够的声誉在那里发表评论。
然后我想出了这个解决方案Anyone get the chromecast android examples working in android studio?,这似乎是一个很好的尝试,除了我似乎无法在任何地方找到提到的 GoogleCastSdkAndroid.jar,所以我被卡住了。
在任何地方都找不到真正全面的教程,因为它们似乎都没有任何问题,将 v7 添加到项目中。
提前感谢任何可以贡献一些时间来解决此问题的人。
编辑: 升级到 0.4.6 之后(0.5.1 已经稳定了吗?考虑到 0.5.0 之后的速度……听起来不太好);我按照 Ali Naddaf 的建议做了,但出现了几个额外的问题:
我可以毫无问题地构建 CastVideos 项目并将其导入 Studio;但是,CastVideos 项目结构与新项目的结构(以下称为 OtherApp)完全不同。
当我尝试在 OtherApp 上模仿 CastVideos 时出现的主要问题是,它仅在 OtherApp 上找不到 CastCompanionLibrary 项目,我似乎无法弄清楚应该位于何处(我认为“核心”文件夹是带有 AndroidManifest 的文件夹?)。
另外,你现在如何导入模块?项目结构只允许创建新模块。
【问题讨论】:
【参考方案1】:我的建议:
更新您的 Android Studio 打开 SDK 管理器并确保您已安装“Android Support Repository” 在您的系统上创建一个空目录(以下称为<DIR>
)
将目录更改为 <DIR>
并将 CastCompanionLibrary-android 克隆到 CastConpanionLibrary
$ cd <DIR>
$ git clone https://github.com/googlecast/CastCompanionLibrary-android.git CastCompanionLibrary
$ git clone https://github.com/googlecast/CastVideos-android.git CastVideos
首先通过命令行构建确保一切正常:
$ cd CastVideos
$ ./gradlew build
此时它应该会成功构建。
如果一切正常,打开您的 Android Studio 并选择“导入项目”并指向 CastVideos 项目中的build.gradle
。
现在对于任何其他项目,您可以查看 CastCompanionLibrary 或 CastVideos 中的 build.gradle 以了解如何设置对支持库的依赖项;如果你不依赖 CastCompnionLibrary,那就更简单了。
【讨论】:
感谢您的想法,大部分确实如您所说,但出现了一些额外的不确定性,用更多信息更新了问题。 你说它构建了 CastVideos 应用程序,那么如果它找不到 CastCompanionLibrary 怎么会是这样呢?如果没有找到那个库,编译就会失败。 我很抱歉,应该更清楚;对于 CastVideos,它发现 CastCompanionLibrary 没有任何问题,但是在制作我的 OtherApp 时,找到它时遇到问题。 您有两个选择: (1) 查看 CastVideos-android 以及“settings.gradle”和“build.gradle”,看看那里如何引用 CCL 并尝试执行在您自己的项目中也是如此,(2)进入 CCL 项目并使用 gradle 构建它(运行类似“./gradlew build”的东西)然后进入 build/apk 目录;那里应该有 AAR 文件。然后你可以把它们放在你的文件系统的某个地方,并在你的其他项目中使用它。 感谢您的时间和耐心。选项 1 工作得非常好,并且很好地学习了如何处理整个 Android Studio。【参考方案2】:您非常需要升级 Android Studio。 0.3.2 已经很老了,从那时起已经修复了许多错误,这些错误几乎肯定会影响到您。
除此之外,请确保您在 SDK 管理器中安装了 Android 支持存储库。在这两者之间,它应该可以解决您的support.v7
错误和@style/Theme.AppCompat
问题。
【讨论】:
【参考方案3】:这个问题已经很老了,但为了让它发挥作用,我必须克隆两个 Git 存储库(CastCompanionLibrary 和 CastVideos-android)。将 CCL 作为 Non Android Studio Project 导入 Android Studio,将构建工具的版本更改为当前的 21.1.10,构建项目并关闭它。 Android Studio 要求我重新打开该项目。打是。对 CastVideos-android 做同样的事情,最后我可以将它启动到我的智能手机中。
真的很痛苦,我花了 2 个小时来理解错误,因为我试图像 Android Studio 项目(它们是)一样打开 Android Studio,但是 .idea 文件有问题。 试过了,一切正常。
【讨论】:
以上是关于让 GoogleCast 工作的主要内容,如果未能解决你的问题,请参考以下文章
运行 googlecast 示例时的 Android ClassNotFoundException
在 XCode 上运行时出错“未定义不是对象(正在评估 'GoogleCast.DEVICE_AVAILABLE')”