Android上的VideoCast示例应用程序未检测到cast设备

Android上的VideoCast示例应用程序未检测到cast设备,android,google-cast,Android,Google Cast,在更新google play服务库等之后,我从github下载并构建了CastCompanyLibrary和CastVideos android示例代码 我已修改字符串文件以输入我的AppId 我在开发者控制台中配置了一个测试设备,还配置了一个应用程序(在本例中是示例视频应用程序),并为该应用程序输入了与AndroidManifest.xml中相同的包名 该应用程序启动、运行并显示视频列表,但似乎没有检测到chromecast设备,因为在ActionBar中添加了on按钮 我现在正试图发布示例应

在更新google play服务库等之后,我从github下载并构建了CastCompanyLibrary和CastVideos android示例代码

我已修改字符串文件以输入我的AppId

我在开发者控制台中配置了一个测试设备,还配置了一个应用程序(在本例中是示例视频应用程序),并为该应用程序输入了与AndroidManifest.xml中相同的包名

该应用程序启动、运行并显示视频列表,但似乎没有检测到chromecast设备,因为在ActionBar中添加了on按钮

我现在正试图发布示例应用程序,看看是否可以修复它,但按照说明和使用股票示例代码到目前为止对我不起作用


我做错了什么?

我有完全相同的问题,cast视频示例应用程序找不到我的chromecast,因此它不会在操作栏中显示“cast按钮”

和您一样,在年,我使用Android平台设置了一个新的媒体接收器应用程序,并将包名设置为:com.google.sample.cast.refplayer

然后我发现: 因此,我在onCreate方法中更改了CastApplication.java: APPLICATION\u ID=CastMediaControlIntent.DEFAULT\u MEDIA\u RECEIVER\u APPLICATION\u ID

现在它工作了,我可以看到演员按钮,并发送视频到我的chromecast。
但我仍然无法使用自己的应用程序来使用自己的接收器。

Andrew,您所指的哪个XML文件中包含付费服务版本的内容?关于你的问题,我的建议是:

(1) 确保您的设备已列入应用程序的白名单。我设想您正在开发控制台上创建一个应用程序id并使用该应用程序id。如果您的设备被列入白名单,您应该能够使用chrome浏览器在http://:9222上访问它,如果您无法访问,则您的设备未被列入白名单。要进行故障排除,请查看post

(2) 设备设置为开发后,请确保将应用程序id放入
strings.xml
。确保您的依赖项设置正确:配套库依赖于支持库v7中的appcompat和mediarouter,以及play store库的rev 15。android仅依赖于配套库


如果您遵循这些步骤,所有这些都应该可以工作。

我从Cast developer控制台()发布了我的应用程序,这似乎已经解决了它


顺便说一句:其他人可能在应用程序ID的大小写上有问题,但我没有。

我接受了一些谷歌页面的建议,拍摄了我的Chromecast特写照片……用那张无法读取的激光蚀刻ID

然后我放大并检查……是的,我的设备ID中有一个“8”而不是一个“B”,这可能导致我的设备没有像阿里·纳达夫所说的那样被列入白名单

我删除了旧设备,并创建了一个具有正确设备ID的新设备。然后我必须等待15分钟才能注册

因此,我在AndroidManifest.xml中更改了示例的包名,在开发控制台中用该包名创建了一个新的Android应用程序,并将新的应用程序Id放入代码(strings.xml)中,重新构建并部署了我的Android应用程序


所有这些都不起作用,chromecast也没有出现……因此,现在,使用已发布的应用程序是唯一对我有效的方法。

好的,下面是我对使用未发布的应用程序时必须做的事情的总结:

  • 仔细检查设备ID。它很难读取,并且某些字符可能是错误的。在光线好的地方拍照是个好主意

  • 在dev控制台()中配置设备,注册并等待。后来我不得不重新启动我的Chromecast设备(实际上是两次)。我使用了chromecast应用程序(Mac OS X),您可以从这里下载:

  • 我的Wi-Fi性能很差,这使得我的Android设备将WiFi SSID更改为与ChromeCast连接的设备不同的SSID。最新版本的安卓系统似乎在测试响应时间和带宽,如果被认为“不稳定”(我下载量过多),可能会发生变化,还有一个更好的版本可用。所以,再次检查您是否在Android上使用了正确的WiFi

  • 当然,在开发控制台中配置应用程序,并将(区分大小写的)应用程序id传递到Android res/values文件夹中strings.xml文件中的app_id字符串中


我想就这些。铸造快乐

这意味着您的设备没有正确地列入应用程序的白名单。是的,您是对的,谢谢!我按照这里的说明操作,因为我无法使用http://:9222访问我的chromecast,chromecast应用程序中的“发送序列号”复选框未选中。一旦我这样做并重新启动,我的自定义接收器应用程序就工作了!我想所有这些都是正确的,但还没有检查白名单。我最终发布了我的应用程序,这就解决了这个问题。现在我来看看白名单,引用在AndroidManifest.xml中,事实上,在这个元数据标记中:但是该属性在项目中不存在,所以我添加了它。当我第一次出错时,Logcat吐出一个错误,告诉我使用4242000值;Google Play服务库拥有该资源;这就是为什么在示例项目中找不到这一点。你是对的。我想我最初在play lib模块的资源方面有问题,在本例中,我通过添加。后来我从PlayLib项目中修复了资源问题,所以现在不需要了。谢谢您的设备现在被列入白名单了吗?您可以访问该设备上的调试端口9222吗?否则,您将无法使用自己的任何接收器,因此在尝试运行任何应用程序之前,您需要先解决该问题。我的WiFi似乎有点不稳定(或过载),有时我的手机会自动选择ChromeCast所在的接入点。现在一切都好了,我也开始使用一款时尚的媒体接收器。到目前为止,唯一的办法是