Play notification default sound only (Android)

前端 未结 3 1239
半阙折子戏
半阙折子戏 2020-12-11 01:10

How can I play a notification sound only (without firing a status bar notification)? I want the notification default sound and play it exactly as a notification sound. Is it

3条回答
  •  -上瘾入骨i
    2020-12-11 01:44

    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 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();
    }
    

提交回复
热议问题