我最近把我的Chromecast应用换成了定制的接收器。我仍然在使用Cast Companion库。自定义接收器基本上是基于这个https://github.com/googlecast/cast-custom-receiver/blob/master/sample_media_receiver.html的,唯一的变化是添加了一个徽标和加载屏幕,并注释掉了这行appConfig.maxInactivity = 6000;
,尽管在一开始我没有注释掉它,仍然有同样的问题。
无论如何,这个问题很简单,而且只发生在少数人身上。这发生在我的一个测试设备上,不是所有的,也不是总是的。基本上,我开始播放视频,一切正常,然后设备屏幕关闭,当我再次关闭它时,应用程序已经与Chromecast断开连接。我没有设置在睡觉时关闭wifi,所有抱怨过这个问题的用户都声称他们的设备也没有打开这个设置。
这可能是巧合,当我切换到自定义接收器时发生了这种情况,但我只是想确保不需要向自定义接收器添加什么东西来告诉CCL代码保持连接?
谢谢。
发布于 2014-06-26 20:21:17
今天我也遇到了类似的问题。此行为的主要原因是,一旦发送方(在您的情况下是电话)被锁定(睡眠模式),那么senderDisconnected事件就会在接收方被激发。如果你检查event.reason,它将是未知的,所以你可能会检查原因,如果它未知,那么不要停止播放接收器(window.close)。
当发送者自身断开连接时,event.reason为"disconnected_from_sender“。
我希望这能帮到你。
这与maxInactivity没有任何关系。
发布于 2014-06-22 20:47:50
当你的手机进入休眠状态时,断开wifi连接的策略取决于品牌和供应商。目前,Cast SDK拥有一个锁,只要有cast连接,就可以保持wifi连接,但即使这样也不能100%保证适用于所有手机/型号/供应商/...这与你的接收器无关。正确的解决方案不是在电话进入睡眠状态时尝试对抗wifi断开,而是必须考虑在电话唤醒并重新建立wifi连接时添加一些逻辑来恢复cast连接(注册广播接收器以侦听wifi连接的变化)。
https://stackoverflow.com/questions/24351895
复制