如何将字符串转换为android.net.Uri
问题: 我发现如何将字符串转换为android.net.Uri,android,string,uri,Android,String,Uri,问题: 我发现java.net.URI有一个create(stringuri)选项,但是android.net.URI没有 更具体地说: 我正在尝试获取RingtoneManager的RingtonePicker的输出,并使用SetActualDefaultRingtoneUri将其设置为默认铃声: Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER); intent.putExtra( RingtoneManage
java.net.URI
有一个create(stringuri)选项,但是android.net.URI
没有
更具体地说:
我正在尝试获取RingtoneManager的RingtonePicker
的输出,并使用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);
问题是,ringtonemager.EXTRA\u RINGTONE\u PICKED\u URI
返回的是字符串而不是URI。
可能有比将字符串转换为URI更好的方法。我找不到java.net.URI能做到而android.net.URI不能做到的原因
如有任何建议,将不胜感激 我想您应该使用
android.net.uri
类中的parse
方法。它返回所提供的编码字符串的URi
谢谢大家,但这就是我最终成功的原因
Uri uri = data.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);
RingtoneManager.setActualDefaultRingtoneUri(this,RingtoneManager.TYPE_RINGTONE,uri);
看看这个,如果它能帮你的话,谢谢大家,但我找到了我的解决方案。Uri=data.getParcelableExtra(RingtoneManager.EXTRA\u RINGTONE\u PICKED\u Uri);RingtoneManager.setActualDefaultRingtoneUri(这是RingtoneManager.TYPE_RINGTONE,uri);