在Android Doc和Google上找不到任何明确的内容。
如果有API检测到这一点,它是什么以及在HDMI输出上启用/禁用HDCP的API是什么?
如果没有API可以检测到这一点,是否可以使用设备检查HDMI端口上的HDCP标志?
在某些Android设备(最值得注意的是三星设备)上,HDMI端口始终启用了HDCP。 但其他制造商的设备呢?在Google认证的设备上是否必须使用HDCP?如果不是强制性的,主要内容提供商的Android应用程序(来自Big cable company teleco)如何阻止视频输出到非HDCP保护的HDMI端口?
答案 0 :(得分:2)
您可以尝试检查Display
标记:http://developer.android.com/reference/android/view/Display.html#getFlags()
FLAG_SECURE或FLAG_SUPPORTS_PROTECTED_BUFFERS (http://developer.android.com/reference/android/view/Display.html#FLAG_SECURE 和http://developer.android.com/reference/android/view/Display.html#FLAG_SUPPORTS_PROTECTED_BUFFERS)
答案 1 :(得分:1)
这是一个较旧的主题 - 但由于我正在研究这些东西,我想我会更新。
从API 17(Android 4.2+)开始,您可以从标准Android SDK获得适当的HDCP信息代理。
如果要确保显示“安全”,可以在应用程序Surface上调用setSecure(true)。然后,为了更好地衡量,您可以枚举可用的显示并验证是否为每个显示设置了FLAG_SECURE。这将阻止DDMS,并至少向显示驱动程序提示输出应打开HDCP。但不保证,您的里程可能会有所不同。
进一步说明 - 上面提到的Alex路径可能在较新的设备(Android 5.1+)上发生了变化。但由于这取决于OEM,因此预计这可能因不同设备而异。 : - (
答案 2 :(得分:0)
我们仍然将它用于旧设备。我还读到有人在通过adb在新设备上使用此功能仍然取得了一些成功,所以如果有人知道这仍然适用于较新的摩托罗拉设备,请分享。
另外我知道这不是你要求的,但我们将它用于HDMI状态(/ sys / devices / virtual / switch / hdmi / state),希望他们将来扩展它以支持HDCP好吧......所以你可能也想看那个空间。
答案 3 :(得分:-1)
如果它有HDMI端口,通常会启用HDCP,因为没有它就无法工作!