如何从 R.raw 设置 Sound RingtoneManager

How to set Sound RingtoneManager from R.raw

如何从R.raw设置Sound RingtoneManager...

我想设置我的声音,但我不知道如何设置它

Uri defaultRingtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);

        MediaPlayer mediaPlayer = new MediaPlayer();

        try {
            mediaPlayer.setDataSource(context, defaultRingtoneUri);
            mediaPlayer.setAudioStreamType(AudioManager.STREAM_NOTIFICATION);
            mediaPlayer.prepare();
            mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {

                @Override
                public void onCompletion(MediaPlayer mp)
                {
                    mp.release();
                }
            });
            mediaPlayer.start();
        } catch (IllegalArgumentException e) {
            e.printStackTrace();
        } catch (SecurityException e) {
            e.printStackTrace();
        } catch (IllegalStateException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

感谢您的帮助!对不起我的英语不好

如果你想将原始资源加载到 MediaPlayer,试试这个:

mediaPlayer = MediaPlayer.create(context, R.raw.example);
int resID=getResources().getIdentifier(fileName, "raw", getPackageName());
MediaPlayer mediaPlayer=MediaPlayer.create(this,resID);
mediaPlayer.start();

希望对您有所帮助。确保文件名是小写的。

请注意,文件名不包含任何扩展名。不要只写文件名的任何扩展名。 例如 ringtone.mp3 - 写:

.getIndentifier("ringtone","raw",getPackageName());

您甚至可以通过 InputStream 输入。

InputStream ins = getResources().openRawResource(getResources().getIdentifier("fileName","raw", getPackageName()));