diff options
author | gismo2004 <reumuellermarkus@gmail.com> | 2017-02-12 14:26:56 +0100 |
---|---|---|
committer | Dan Pasanen <dan.pasanen@gmail.com> | 2017-03-29 15:33:36 +0000 |
commit | 1f3d3931a5b478cc143a59bfa24eff420fb2ea47 (patch) | |
tree | dca03596edc99788e7ccc0be54090f0c2ea1f5d2 | |
parent | ef9fb84ee79685a9317737031e258b1c44d2b31e (diff) | |
download | android_packages_apps_DeskClock-1f3d3931a5b478cc143a59bfa24eff420fb2ea47.tar.gz android_packages_apps_DeskClock-1f3d3931a5b478cc143a59bfa24eff420fb2ea47.tar.bz2 android_packages_apps_DeskClock-1f3d3931a5b478cc143a59bfa24eff420fb2ea47.zip |
DeskClock: fix ringtones stored on /sdcard/Alarms
we don't need permissions to play alarms from external sdcard.
Change-Id: Ia8d0a814144f95809d7964efef4a35c9788eba0c
-rw-r--r-- | src/com/android/deskclock/AlarmUtils.java | 6 | ||||
-rwxr-xr-x | src/com/android/deskclock/Utils.java | 7 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/com/android/deskclock/AlarmUtils.java b/src/com/android/deskclock/AlarmUtils.java index 4e3f1e2c6..58f6d6ccc 100644 --- a/src/com/android/deskclock/AlarmUtils.java +++ b/src/com/android/deskclock/AlarmUtils.java @@ -133,6 +133,12 @@ public class AlarmUtils { return true; } + // If using ringtones from RingtoneManager stored on external sd-card return true + // even if their uri points to "content://media/external/*" + if (ringtoneUri.getAuthority().equals(Utils.DOC_MEDIA)){ + return true; + } + // If the ringtone is internal, return true; // external ringtones require the permission to see their title return ringtoneUri.toString().startsWith("content://media/internal/"); diff --git a/src/com/android/deskclock/Utils.java b/src/com/android/deskclock/Utils.java index 026660e0f..8b5c80be1 100755 --- a/src/com/android/deskclock/Utils.java +++ b/src/com/android/deskclock/Utils.java @@ -103,6 +103,8 @@ public class Utils { public static final String DOC_DOWNLOAD = "com.android.providers.downloads.documents"; public static final String DOC_EXTERNAL = "com.android.externalstorage.documents"; public static final String DOWNLOAD_CONTENT = "content://downloads/public_downloads"; + /** passed back from RingtoneManager **/ + public static final String DOC_MEDIA = "media"; public static final String COLON = ":"; public static final int ID_INDEX = 1; @@ -785,6 +787,11 @@ public class Utils { } } else if (uri.getScheme().contentEquals("content")) { if (AlarmUtils.hasPermissionToDisplayRingtoneTitle(context, uri)) { + // If the uri is provided by RingtoneManager return true --> if file is not + // available RingtoneManager will play a default tone. + if (uri.getAuthority().equals(Utils.DOC_MEDIA)){ + return true; + } //convert the following uri to the correct, otherwise raise permission exception if (uri.getAuthority().equals(Utils.DOC_DOWNLOAD)) { final String id = DocumentsContract.getDocumentId(uri); |