| Index: content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java b/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java
|
| index f7b7cd3a4503f34883bff2209fd0bde8ba8d4f9c..29ef9c076641746854a21c43224568dfb3305f10 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/MediaResourceGetter.java
|
| @@ -10,6 +10,7 @@ import android.content.pm.PackageManager;
|
| import android.media.MediaMetadataRetriever;
|
| import android.net.ConnectivityManager;
|
| import android.net.NetworkInfo;
|
| +import android.net.Uri;
|
| import android.os.ParcelFileDescriptor;
|
| import android.text.TextUtils;
|
|
|
| @@ -32,8 +33,7 @@ import java.util.Map;
|
| */
|
| @JNINamespace("content")
|
| class MediaResourceGetter {
|
| -
|
| - private static final String TAG = "cr.MediaResourceGetter";
|
| + private static final String TAG = "cr_MediaResource";
|
| private static final MediaMetadata EMPTY_METADATA = new MediaMetadata(0, 0, 0, false);
|
|
|
| private final MediaMetadataRetriever mRetriever = new MediaMetadataRetriever();
|
| @@ -195,7 +195,7 @@ class MediaResourceGetter {
|
| Log.d(TAG, "extracted valid metadata: %s", result);
|
| return result;
|
| } catch (RuntimeException e) {
|
| - Log.e(TAG, "Unable to extract metadata: %s", e.getMessage());
|
| + Log.e(TAG, "Unable to extract metadata: %s", e);
|
| return EMPTY_METADATA;
|
| }
|
| }
|
| @@ -206,7 +206,7 @@ class MediaResourceGetter {
|
| try {
|
| uri = URI.create(url);
|
| } catch (IllegalArgumentException e) {
|
| - Log.e(TAG, "Cannot parse uri: %s", e.getMessage());
|
| + Log.e(TAG, "Cannot parse uri: %s", e);
|
| return false;
|
| }
|
| String scheme = uri.getScheme();
|
| @@ -224,7 +224,16 @@ class MediaResourceGetter {
|
| configure(file.getAbsolutePath());
|
| return true;
|
| } catch (RuntimeException e) {
|
| - Log.e(TAG, "Error configuring data source: %s", e.getMessage());
|
| + Log.e(TAG, "Error configuring data source: %s", e);
|
| + return false;
|
| + }
|
| + }
|
| + if (scheme.equals("content")) {
|
| + try {
|
| + configure(context, Uri.parse(uri.toString()));
|
| + return true;
|
| + } catch (RuntimeException e) {
|
| + Log.e(TAG, "Error configuring data source: %s", e);
|
| return false;
|
| }
|
| }
|
| @@ -248,7 +257,7 @@ class MediaResourceGetter {
|
| configure(url, headersMap);
|
| return true;
|
| } catch (RuntimeException e) {
|
| - Log.e(TAG, "Error configuring data source: %s", e.getMessage());
|
| + Log.e(TAG, "Error configuring data source: %s", e);
|
| return false;
|
| }
|
| }
|
| @@ -398,6 +407,11 @@ class MediaResourceGetter {
|
| }
|
|
|
| @VisibleForTesting
|
| + void configure(Context context, Uri uri) {
|
| + mRetriever.setDataSource(context, uri);
|
| + }
|
| +
|
| + @VisibleForTesting
|
| String extractMetadata(int key) {
|
| return mRetriever.extractMetadata(key);
|
| }
|
|
|