2

Android 的 DRM 文档 [1] 的入口页面说,Android 提供了一个 DrmManagerClient-native 实现作为本地模块的接口。据我所知,接口是 DrmManagerClient.h [2]。

谈到 Java API 时,明确指出只有 API 级别 18 及更高级别支持 Widevine 的模块化版本。API 18 引入了 MediaDrm 类,而 NDK 包含从 API 级别 21 开始的 NativeMediaDrm.h。较新的 Android 带有“libwvdrmengine.so”和“libwvm.so”,它们可能是 WV 模块化库和 WV 经典库之一。Internet 搜索显示 libwvm.so 在 Android 4.0.4 及更高版本上使用。

哪些 Android 版本支持 DrmManagerClient-native 中的 Widevine-modular?

[1] https://source.android.com/devices/drm.html

[2] android/platform/frameworks/av/include/drm/DrmManagerClient.h

4

1 回答 1

1

我不会太相信文档。例如,已经 6 年了,他们仍然需要对其进行调整以反映 commit 0a32d7981b98fdfca48a1e35ca746f1cc11849d3

无论如何,Widevine-classic 实际上是在3.0中引入的,但是除了您在 4.3 中提到的引入模块化的变化之外,我不知道有任何其他特殊技巧。

据此,您谈论的库不应被视为“分离的”。我的教育猜测是,在 Stagefright 之后,他们只是尽可能地“划分”了与媒体复制相关的所有内容,甚至包括 DRM。但WV仍然只有两条路。

于 2017-04-22T12:33:24.533 回答