From c058a380de5a7eb5427cef295f1c259c507e25bd Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Tue, 19 Feb 2013 14:44:41 -0800 Subject: [PATCH] Open file:// Uris on client side of MediaPlayer. Bug: 7962739 Change-Id: I674b437593fa083eb66ff3ca57b898cf9bd4a3e9 --- media/java/android/media/MediaPlayer.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/media/java/android/media/MediaPlayer.java b/media/java/android/media/MediaPlayer.java index 7bd904901bacc..11f41808c618f 100644 --- a/media/java/android/media/MediaPlayer.java +++ b/media/java/android/media/MediaPlayer.java @@ -948,7 +948,12 @@ public class MediaPlayer private void setDataSource(String path, String[] keys, String[] values) throws IOException, IllegalArgumentException, SecurityException, IllegalStateException { - File file = new File(path); + final Uri uri = Uri.parse(path); + if ("file".equals(uri.getScheme())) { + path = uri.getPath(); + } + + final File file = new File(path); if (file.exists()) { FileInputStream is = new FileInputStream(file); FileDescriptor fd = is.getFD();