如何从 Android 应用程序中发现 Roku 设备以进行投射
Posted
技术标签:
【中文标题】如何从 Android 应用程序中发现 Roku 设备以进行投射【英文标题】:How to discover Roku device from within an Android app in order to cast 【发布时间】:2021-03-09 14:48:37 【问题描述】:我正在开发一个应用程序,其中包含一些可以通过 WiFi 投射到其他设备(如智能电视)的视频内容。
投射到智能电视、android TV 或 Google Chromecast 的逻辑已经实现并且可以正常工作。
Roku 有相同的应用程序,它安装在我的 Roku 设备上,但 android 应用程序根本无法发现此 Roku 设备。它只列出了智能电视,但没有列出 Roku 设备。
我查看了几篇帖子,在我看来 Play Services Cast 库不适用于 Roku。
这些是我在 android 应用程序中使用的强制转换依赖项:
implementation "androidx.mediarouter:mediarouter:1.1.0"
implementation "com.google.android.gms:play-services-cast:16.1.2"
implementation "com.google.android.gms:play-services-cast-framework:16.1.2"
这里有人有从 android 应用程序中投射到 Roku 的经验吗? 是否有适用于 android 的 Roku SDK 使 Roku 在 Android 设备上投射可见? 也许 Roku 设备上的同一个应用程序必须实现一些逻辑才能在 android 上被同一个应用程序发现? 如何做到这一点?
我看到 YouTube 有这个功能,Netflix 和 Spotify 也有,所以我想它可以做到。
【问题讨论】:
【参考方案1】:可以通过 DIAL(发现和启动)在 Roku 设备上进行投射。与其他平台不同,Roku 设备无需在 DIAL 注册表中注册。如果您希望其他设备可以发现 Roku 应用程序,则在 roku 应用程序清单文件中应该有以下条目 -
dial_title="dial_service_name"
虽然 Roku 具有称为 ECP 的等效实现,但它们支持 DIAL,因为它已被广泛接受并且跨域解决方案进行投射。您可以找到更多详细信息here。您可以从以下链接下载示例应用程序 --
https://github.com/rokudev/samples/blob/master/utilities/RokuDIALSDK.zip
【讨论】:
以上是关于如何从 Android 应用程序中发现 Roku 设备以进行投射的主要内容,如果未能解决你的问题,请参考以下文章