Skip to content

Commit b243547

Browse files
maade93791muhomorr
authored andcommitted
add Widevine provisioning setting
Signed-off-by: maade69 <[email protected]> Co-authored-by: Dmitry Muhomor <[email protected]>
1 parent bb60c91 commit b243547

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

app/src/com/android/rkpdapp/provisioner/WidevineProvisioner.java

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package com.android.rkpdapp.provisioner;
1818

1919
import android.content.Context;
20+
import android.ext.settings.WidevineProvisioningSettings;
2021
import android.media.DeniedByServerException;
2122
import android.media.MediaDrm;
2223
import android.media.UnsupportedSchemeException;
@@ -162,13 +163,31 @@ public Result provisionWidevine() {
162163

163164
private byte[] fetchWidevineCertificate(MediaDrm.ProvisionRequest req) throws IOException {
164165
final byte[] data = req.getData();
166+
final String origUrlString = req.getDefaultUrl();
167+
final String urlString;
168+
169+
final String hostnameOverride = WidevineProvisioningSettings.getServerHostnameOverride(getApplicationContext());
170+
if (hostnameOverride != null) {
171+
URL origUrl = new URL(origUrlString);
172+
urlString = new URL("https", hostnameOverride, origUrl.getFile()).toString();
173+
Log.d(TAG, "fetchWidevineCertificate: overridden url from " + origUrlString + " to " + urlString);
174+
} else {
175+
urlString = origUrlString;
176+
}
177+
165178
final String signedUrl = String.format(
166179
"%s&signedRequest=%s",
167-
req.getDefaultUrl(),
180+
urlString,
168181
new String(data));
182+
Log.d(TAG, "fetchWidevineCertificate: signedUrl: " + signedUrl);
183+
169184
try {
170185
return sendNetworkRequest(signedUrl);
171186
} catch (SocketTimeoutException e) {
187+
if (hostnameOverride != null) {
188+
throw e;
189+
}
190+
172191
Log.i(TAG, "Provisioning failed with normal URL, retrying with China URL.");
173192
final String chinaUrl = req.getDefaultUrl().replace(".com", ".cn");
174193
final String signedUrlChina = String.format(

0 commit comments

Comments
 (0)