Как преобразовать строку в android.net.Uri

Вопрос: Я обнаружил, что java.net.URI имеет параметр create(String uri), а android.net.uri — нет.

Более конкретно: я пытаюсь получить вывод RingtonePicker RingtoneManager и установить его в качестве мелодии звонка по умолчанию с помощью 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);

Проблема в том, что RingtoneManager.EXTRA_RINGTONE_PICKED_URI возвращает строку, а не URI. Может быть лучший способ, чем преобразовать строку в URI. Я не могу найти причину, по которой java.net.URI может это сделать, а android.net.Uri не может.

Мы ценим любые предложения!


person FeelTheBurns    schedule 07.10.2010    source источник
comment
Посмотрите это, если это поможет вам stackoverflow.com /questions/3487389/java-convert-string-to-uri/   -  person ccheneson    schedule 07.10.2010


Ответы (2)



Спасибо, ребята, но вот как я в конечном итоге заставил это работать

Uri uri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);
RingtoneManager.setActualDefaultRingtoneUri(this,RingtoneManager.TYPE_RINGTONE,uri);
person FeelTheBurns    schedule 08.10.2010