views:

57

answers:

2

Question: I have found that java.net.URI has a create(String uri) option but the android.net.uri does not.

More Specific: I am trying to grab the output of RingtoneManager's RingtonePicker and set it as the default ringtone with SetActualDefaultRingtoneUri;

Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER); intent.putExtra( RingtoneManager.EXTRA_RINGTONE_TYPE,RingtoneManager.TYPE_RINGTONE); intent.putExtra( RingtoneManager.EXTRA_RINGTONE_TITLE, "Select Tone For Rainy Days"); startActivityForResult(intent, 0);

RingtoneManager.setActualDefaultRingtoneUri(this,RingtoneManager.TYPE_RINGTONE,RingtoneManager.EXTRA_RINGTONE_PICKED_URI);

Problem being that ,RingtoneManager.EXTRA_RINGTONE_PICKED_URI returns a string not a uri. There might be a better way than to convert the string to a Uri. I cannot find a reason why java.net.URI can do it and android.net.Uri can't.

Any suggestions would be appreciated!

Thanks

+2  A: 

I guess you want to use the parse method from the android.net.uri class. It returns a URi for the supplied encoded string.

android.net.uri parse()

methode
Thanks guys but I found my solution.
Uri uri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI); RingtoneManager.setActualDefaultRingtoneUri(this,RingtoneManager.TYPE_RINGTONE,uri);
A: 
Thanks guys, but this is how I ended up making it work

Uri uri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI); RingtoneManager.setActualDefaultRingtoneUri(this,RingtoneManager.TYPE_RINGTONE,uri);