无法获得DrmEngines android

时间:2018-02-28 23:29:19

标签: android android-drm

我正在使用 DrmManagerClient 来提供 DRMengines ,如下所示:

DrmManagerClient mDrmManager = new DrmManagerClient(context);
   String[] engines = mDrmManager.getAvailableDrmEngines();

对于某些设备,例如 huawei 荣誉getAvailableDrmEngines会返回0,但该设备可以支持 widevine ,因为我用DRM Info App测试了它。我做错了什么,或者我错过了什么?

1 个答案:

答案 0 :(得分:0)

您的设备可能不支持经典的DRM API。也许尝试使用新的MediaDrm API。

我还没有尝试过,但是我期望Widevine L1应该返回6(默认值)或SECURITY_LEVEL_HW_SECURE_ALL,而L3应该报告SECURITY_LEVEL_SW_SECURE_DECODESECURITY_LEVEL_SW_SECURE_CRYPTO

返回的值可能会更改,但是您会明白的。

widevine L3和Widevine L1:

  • L1:处理所有内容处理和加密操作 可信执行环境(TEE)内
  • L2:仅加密 操作在TEE内部处理
  • L3:内容处理和 加密操作(有意)在TEE之外进行处理, 或设备不支持TEE。