gpt4 book ai didi

android - Chromecast 发送器应用程序未检测到断开连接/重新连接

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:00:05 26 4
gpt4 key购买 nike

我之前使用预览版 SDK 开发了一个 android 发送器应用程序,发现当打开或关闭 Chromecast 时,该应用程序很快发现了这一点并更改了媒体路由按钮的状态。

但是,对于新的 SDK,如果在应用未连接到 Chromecast 时拔下插头,则永远不会调用 MediaRouter.Callback.onRouteUnselected() 并且 Cast 图标仍然可见。在某些情况下,即使应用程序关闭并再次打开,onRouteAdded 也会在启动时使用之前连接的 Chromecast 的详细信息调用,即使它不再插入因此不在网络上,这表明某处存在某种缓存.

我在自己的应用程序(使用配套库)和 github 上的示例 CastVideos-android 应用程序中都注意到了这一点。这会像这样设置回调:

mMediaRouter = MediaRouter.getInstance(context);
mMediaRouteSelector = new MediaRouteSelector.Builder().addControlCategory(
CastMediaControlIntent.categoryForCast(mApplicationId)).build();

mMediaRouterCallback = new CastMediaRouterCallback(this, context);
mMediaRouter.addCallback(mMediaRouteSelector, mMediaRouterCallback,
MediaRouter.CALLBACK_FLAG_PERFORM_ACTIVE_SCAN);

这会导致非常糟糕的用户体验 - 我有什么办法可以改善它吗?也许我可以传递一些标志,它会执行比 CALLBACK_FLAG_PERFORM_ACTIVE_SCAN 更主动的扫描,从而检测不再在网络上的 Chromecast?或者我可以不时点击某种方法再次扫描并确保 chromecast 仍然存在?我查看了 API,但看不到任何内容。

编辑:更糟糕的是,我还注意到如果 Chromecast 被拔掉然后你试图转换到它,它会断开连接(很好)但是当它重新插入时不会检测到 Chromecast。这甚至是真的如果您退出应用程序并再次启动它。

最佳答案

您所概述的行为是由 SDK 中的错误引起的,该错误将在下一版本的 Google Play 服务中得到解决。

关于android - Chromecast 发送器应用程序未检测到断开连接/重新连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22137467/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com