是否可以从手机中获取所有铃声并将其显示到 android 中的微调器中?是否可以通过内容提供商?
问问题
599 次
2 回答
3
如果您只需要让用户从系统中选择铃声的能力:
另一个答案需要大量代码和工作才能开始。RingtoneManager.ACTION_RINGTONE_PICKER
相反,使用意图更容易。这将启动一个带有微调器的对话框,其中包含所有铃声并要求用户选择一个。示例代码:
public static final int REQUESTCODE_PICKRINGTONE = 1;
public void launchPickRingtoneIntent() {
Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "Select Tone");
startActivityForResult(intent, REQUESTCODE_PICKRINGTONE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == REQUESTCODE_PICKRINGTONE && resultCode == RESULT_OK) {
Uri uri = data
.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);
if (uri != null) {
// uri contains the URI of the selected ringtone
} else {
// user picked "silent" as the ringtone
}
}
}
可以使用一些选项自定义此意图,例如您可以隐藏静音选项等。此处的代码示例使用自定义标题。其他选项的使用方式类似。
于 2012-06-19T13:06:23.513 回答
2
请参阅此示例Using SimpleCursorAdapter to Display Ringtones from RingtoneManager in Android Using ListView Templates for getting all the existing ringtones using RingtoneManager。
于 2012-06-19T12:50:05.287 回答