public class OfflineLicenseManager extends java.lang.Object implements LicenseManager, DrmSession<com.google.android.exoplayer2.drm.ExoMediaCrypto>
Modifier and Type | Class and Description |
---|---|
static class |
OfflineLicenseManager.Builder |
CR_TOKEN_HEADER
Constructor and Description |
---|
OfflineLicenseManager(com.google.android.exoplayer2.drm.ExoMediaDrm.Provider mediaDrm,
com.google.android.exoplayer2.drm.MediaDrmCallback callback,
java.util.HashMap<java.lang.String,java.lang.String> optionalKeyRequestParameters,
com.google.android.exoplayer2.drm.DrmSessionEventListener.EventDispatcher drmSessionEventDispatcher)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
byte[] |
downloadLicense(java.lang.String manifestUriString,
CustomerRightsToken customerRightsToken)
Downloads an offline license.
|
DrmException |
getDrmError()
Deprecated.
|
byte[] |
getOfflineLicenseKeySetId()
Deprecated.
|
byte[] |
getPropertyByteArray(java.lang.String propertyName) |
java.lang.String |
getPropertyString(java.lang.String propertyName)
Gets the specified property.
|
android.util.Pair<java.lang.Long,java.lang.Long> |
getRemainingLicenseDuration(byte[] licenseKeySetId)
Returns license and playback durations remaining in seconds of the given offline license.
|
java.util.Map<java.lang.String,java.lang.String> |
queryKeyStatus()
Deprecated.
|
void |
releaseLicense(byte[] licenseKeySetId)
Releases an offline license.
|
void |
releaseResources()
Releases the used resources.
|
byte[] |
renewLicense(byte[] licenseKeySetId)
Renews an offline license.
|
void |
setPropertyByteArray(java.lang.String propertyName,
byte[] value) |
void |
setPropertyString(java.lang.String propertyName,
java.lang.String value)
Sets the specified property.
|
@Deprecated public OfflineLicenseManager(com.google.android.exoplayer2.drm.ExoMediaDrm.Provider mediaDrm, com.google.android.exoplayer2.drm.MediaDrmCallback callback, java.util.HashMap<java.lang.String,java.lang.String> optionalKeyRequestParameters, com.google.android.exoplayer2.drm.DrmSessionEventListener.EventDispatcher drmSessionEventDispatcher)
mediaDrm
- An underlying ExoMediaDrm.Provider
for use by the manager.callback
- Performs key and provisioning requests.optionalKeyRequestParameters
- An optional map of parameters to pass as the last argument
to MediaDrm.getKeyRequest(byte[], byte[], String, int, HashMap)
. May be null.drmSessionEventDispatcher
- A DrmSessionEventListener.EventDispatcher
used to distribute
DRM-related events.public void releaseResources()
LicenseManager
releaseResources
in interface LicenseManager
@Nullable public byte[] downloadLicense(java.lang.String manifestUriString, @NonNull CustomerRightsToken customerRightsToken) throws java.io.IOException, DrmException
LicenseManager
downloadLicense
in interface LicenseManager
manifestUriString
- the URL to the DASH manifest file.customerRightsToken
- the customer rights token that describes the license type and limitations.java.io.IOException
- If an error occurs while attempt to read the manifest from the stream.DrmException
- Thrown when there is an error during DRM session.@Nullable public byte[] renewLicense(byte[] licenseKeySetId) throws DrmException
LicenseManager
renewLicense
in interface LicenseManager
licenseKeySetId
- The key set id of the license to be renewed.DrmException
- Thrown when there is an error during DRM session.public void releaseLicense(@Nullable byte[] licenseKeySetId) throws DrmException
LicenseManager
releaseLicense
in interface LicenseManager
licenseKeySetId
- The key set id of the license to be released.DrmException
- Thrown when there is an error during DRM session.@Nullable public android.util.Pair<java.lang.Long,java.lang.Long> getRemainingLicenseDuration(byte[] licenseKeySetId) throws DrmException
LicenseManager
Pair.first
value in the result will provide the remaining license duration as total
number of seconds, while Pair.second
value will provide the remain play duration as
total number of seconds.getRemainingLicenseDuration
in interface LicenseManager
licenseKeySetId
- The key set id of the license.DrmException
@Deprecated public DrmException getDrmError()
getDrmError
in interface BrightcoveDrmSession
@Deprecated public java.util.Map<java.lang.String,java.lang.String> queryKeyStatus()
queryKeyStatus
in interface BrightcoveDrmSession
@Deprecated public byte[] getOfflineLicenseKeySetId()
getOfflineLicenseKeySetId
in interface BrightcoveDrmSession
public java.lang.String getPropertyString(java.lang.String propertyName)
LicenseManager
getPropertyString
in interface BrightcoveDrmSession
getPropertyString
in interface LicenseManager
MediaDrm.getPropertyString(String)
public byte[] getPropertyByteArray(java.lang.String propertyName)
getPropertyByteArray
in interface BrightcoveDrmSession
MediaDrm.getPropertyByteArray(String)
public void setPropertyString(java.lang.String propertyName, java.lang.String value)
LicenseManager
setPropertyString
in interface BrightcoveDrmSession
setPropertyString
in interface LicenseManager
MediaDrm.setPropertyString(String, String)
public void setPropertyByteArray(java.lang.String propertyName, byte[] value)
setPropertyByteArray
in interface BrightcoveDrmSession
MediaDrm.setPropertyByteArray(String, byte[])