From 373334fcce348290ae4f8503f45edfdb7255956f Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Thu, 26 Jul 2012 16:04:38 +0200 Subject: [PATCH] Fix ringtone issue --- src/org/linphone/LinphoneService.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/org/linphone/LinphoneService.java b/src/org/linphone/LinphoneService.java index 594baf803..6e395df19 100644 --- a/src/org/linphone/LinphoneService.java +++ b/src/org/linphone/LinphoneService.java @@ -539,12 +539,17 @@ public final class LinphoneService extends Service implements LinphoneServiceLis } public void onRingerPlayerCreated(MediaPlayer mRingerPlayer) { - String uriString = PreferenceManager.getDefaultSharedPreferences(this).getString(getString(R.string.pref_audio_ringtone), RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE).toString()); + String uriString = PreferenceManager.getDefaultSharedPreferences(this).getString(getString(R.string.pref_audio_ringtone), + android.provider.Settings.System.DEFAULT_RINGTONE_URI.toString()); try { - FileInputStream fis = new FileInputStream(uriString); - mRingerPlayer.setDataSource(fis.getFD()); + if (uriString.startsWith("content://")) { + mRingerPlayer.setDataSource(this, Uri.parse(uriString)); + } else { + FileInputStream fis = new FileInputStream(uriString); + mRingerPlayer.setDataSource(fis.getFD()); + } } catch (IOException e) { - Log.e(e, "cannot set ringtone"); + Log.e(e, "Cannot set ringtone"); } }