From 7ad2a898571db9c0db95caf09cda8632660ff6dd Mon Sep 17 00:00:00 2001 From: Allan Wang Date: Thu, 13 Jun 2019 17:19:25 -0700 Subject: Resolve file uri ourself for ringtones, resolves #1423 --- .../kotlin/com/pitchedapps/frost/settings/Notifications.kt | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'app/src/main/kotlin/com/pitchedapps/frost/settings/Notifications.kt') diff --git a/app/src/main/kotlin/com/pitchedapps/frost/settings/Notifications.kt b/app/src/main/kotlin/com/pitchedapps/frost/settings/Notifications.kt index 91d87e3b..40ff071e 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/settings/Notifications.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/settings/Notifications.kt @@ -19,7 +19,6 @@ package com.pitchedapps.frost.settings import android.annotation.SuppressLint import android.content.Intent import android.media.RingtoneManager -import android.net.Uri import android.os.Build import android.provider.Settings import ca.allanwang.kau.kpref.activity.KPrefAdapterBuilder @@ -39,6 +38,7 @@ import com.pitchedapps.frost.services.fetchNotifications import com.pitchedapps.frost.services.scheduleNotifications import com.pitchedapps.frost.utils.Prefs import com.pitchedapps.frost.utils.frostSnackbar +import com.pitchedapps.frost.utils.frostUri import com.pitchedapps.frost.views.Keywords import kotlinx.coroutines.launch @@ -136,8 +136,7 @@ fun SettingsActivity.getNotificationPrefs(): KPrefAdapterBuilder.() -> Unit = { enabler = Prefs::notificationSound textGetter = { if (it.isBlank()) string(R.string.kau_default) - // Ringtones have uris of format /content:/media/...; Uri.parse is okay - else RingtoneManager.getRingtone(this@getNotificationPrefs, Uri.parse(it)) + else RingtoneManager.getRingtone(this@getNotificationPrefs, frostUri(it)) ?.getTitle(this@getNotificationPrefs) ?: "---" //todo figure out why this happens } @@ -148,8 +147,10 @@ fun SettingsActivity.getNotificationPrefs(): KPrefAdapterBuilder.() -> Unit = { putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true) putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_NOTIFICATION) if (item.pref.isNotBlank()) { - // Ringtones have uris of format /content:/media/...; Uri.parse is okay - putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, Uri.parse(item.pref)) + putExtra( + RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, + frostUri(item.pref) + ) } } startActivityForResult(intent, code) -- cgit v1.2.3