* This code was originally taken from the ExoPlayer demo application. */ @TargetApi(18) public class SmoothStreamingTestMediaDrmCallback implements MediaDrmCallback { private static final String PLAYREADY_TEST_DEFAULT_URI = "http://playready.directtaps.net/pr/svc/rightsmanager.asmx"; private static final Map KEY_REQUEST_PROPERTIES; static { HashMap keyRequestProperties = new HashMap<>(); keyRequestProperties.put("Content-Type", "text/xml"); keyRequestProperties.put("SOAPAction", "http://schemas.microsoft.com/DRM/2007/03/protocols/AcquireLicense"); KEY_REQUEST_PROPERTIES = keyRequestProperties; } @Override public byte[] executeProvisionRequest(UUID uuid, ProvisionRequest request) throws IOException { String url = request.getDefaultUrl() + "&signedRequest=" + new String(request.getData()); return Util.executePost(url, null, null); } @Override public byte[] executeKeyRequest(UUID uuid, KeyRequest request) throws Exception { String url = request.getDefaultUrl(); if (TextUtils.isEmpty(url)) { url = PLAYREADY_TEST_DEFAULT_URI; } return Util.executePost(url, request.getData(), KEY_REQUEST_PROPERTIES); } }