我想开发一个消息传递应用程序。在此消息传递应用程序中,用户可以更改默认的短信铃声。为此,我必须在对话中显示所有短信铃声。
每当用户选择短信铃音时,短信铃音的名称将在文本视图中设置,并且该铃声将设置为默认短信铃音。我怎样才能做到这一点 ?

最佳答案

无论您做什么。该代码肯定会做您想要的东西!

selsound_button.setOnClickListener(new OnClickListener()
{
    public void onClick(View arg0)
    {
        Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
        Uri currenturi = ContentUris.withAppendedId(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, 1l);
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "Select ringtone for notifications:");
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, false);
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true);
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,RingtoneManager.TYPE_NOTIFICATION);
        intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, currenturi);
        startActivityForResult( intent, 999);
    }
});


RingtoneManager.setActualDefaultRingtoneUri(
myActivity, RingtoneManager.TYPE_RINGTONE, currenturi);


好吧,必须添加清单文件

<uses-permission android:name="android.permission.WRITE_SETTINGS" />


uri不是Rigntone名称的名称

Ringtone ringtone = RingtoneManager.getRingtone(this, uri);
String title = ringtone.getTitle(this);


用它对你来说很方便

关于android - 如何在Android中获取短信铃声,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33891117/

10-09 05:22