【问题标题】:CastCompanionLibrary and Not Extending ActionBarActivityCastCompanionLibrary 和不扩展 ActionBarActivity
【发布时间】:2014-03-12 12:20:29
【问题描述】:

我们的应用程序仅针对 API 级别 14 及更高级别,因此我们不扩展 ActionBarActivity 或使用任何兼容性库。

是否仍然可以使用CastCompanionLibrary,因为它似乎假设一个人正在使用兼容库并扩展ActionBarActivity

谢谢

【问题讨论】:

    标签: chromecast


    【解决方案1】:

    答案是否定的。如果你想使用 Cast 功能,你需要有来自 v7-support 库的媒体路由器(Android 框架中的 MediaRouter 本身是不够的/没有在 cast 中使用)。 v7-support 媒体路由器库依赖于 v7-support appcompat 库。所以简而言之,无论你使用什么 api 级别,如果你想使用 Cast SDK,你需要在你的项目中存在这两个支持库。然后要显示 Cast 图标,您有几个选项;对于其中一个,您的活动必须扩展 ActionBarActivity(CCL 支持此),而对于 MediaRouterButton 方法,它必须扩展 FragmentActivity(我可能会考虑向 CCL 添加对此的支持)。如果您只使用 Activity 但需要两个支持库,则可以手动添加按钮并使其工作,CCL 不处理这些其他情况。

    更新:CCL 现在支持 FragmentActivity 和 MediaRouteButton。

    【讨论】:

    • 我们确实扩展了 FragmentActivity,因此对此的支持将是理想的。感谢您的详细回复。
    • @Steve:请注意,没有什么可以阻止某人移植 MediaRouteActionProviderMediaRouteButton 以使用本机 API 级别 11 版本的操作栏和片段。这花了我一两个小时。我最终会将我的结果发布为可重用的库。将它们移植到使用FragmentActivity 而不是ActionBarActivity 应该更简单,可能只需几行代码。
    猜你喜欢
    • 2016-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多