tonos tono studio samsung ringtones que programacion predeterminados poner notificaciones notificacion los estan encuentran donde como carpeta android audio notifications

android - studio - poner mp3 tono whatsapp



Cómo reproducir un sonido de notificación de Android (9)

Me preguntaba cómo podría reproducir un sonido de notificación sin reproducirlo en el flujo de medios. Ahora mismo puedo hacerlo a través del reproductor multimedia, sin embargo, no quiero que se reproduzca como un archivo multimedia, quiero que se reproduzca como una notificación o alerta o un tono de llamada. heres un ejemplo de cómo se ve mi código en este momento:

MediaPlayer mp = new MediaPlayer(); mp.reset(); mp.setDataSource(notificationsPath+ (String) apptSounds.getSelectedItem()); mp.prepare(); mp.start();


Ahora puede hacer esto al incluir el sonido al crear una notificación en lugar de llamar el sonido por separado.

//Define Notification Manager NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); //Define sound URI Uri soundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(getApplicationContext()) .setSmallIcon(icon) .setContentTitle(title) .setContentText(message) .setSound(soundUri); //This sets the sound to play //Display notification notificationManager.notify(0, mBuilder.build());


Creo que el concepto de "sonido de notificación" es incorrecto para la interfaz de usuario de Android.

El comportamiento esperado de Android es usar la Notificación estándar para alertar al usuario. Si reproduces un sonido de notificación sin el ícono de la barra de estado, consigues confundir al usuario ("¿Qué fue ese sonido? ¿No hay un ícono aquí, quizás tengo problemas de audición?").

Cómo configurar el sonido en una notificación es, por ejemplo, aquí: Configuración de sonido para la notificación


Ha pasado un tiempo desde su pregunta, pero ... ¿Ha intentado configurar el tipo de transmisión de audio?

mp.setAudioStreamType(AudioManager.STREAM_NOTIFICATION);

Debe hacerse antes de prepararse.


Prueba esto:

public void ringtone(){ try { Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification); r.play(); } catch (Exception e) { e.printStackTrace(); } }


Puede usar Notification and NotificationManager para mostrar la notificación que desea. Luego puede personalizar el sonido que desea reproducir con su notificación.


Si alguien todavía está buscando una solución a esto, encontré una respuesta en Cómo reproducir el tono de llamada / alarma en Android

try { Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification); r.play(); } catch (Exception e) { e.printStackTrace(); }

Puede cambiar TYPE_NOTIFICATION a TYPE_ALARM, pero querrá realizar un seguimiento de su Ringtone r para dejar de reproducirlo ... por ejemplo, cuando el usuario haga clic en un botón o algo así.


Si desea que se reproduzca un sonido de notificación predeterminado, puede usar el setDefaults(int) de la clase NotificationCompat.Builder :

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this) .setSmallIcon(R.drawable.ic_notification) .setContentTitle(getString(R.string.app_name)) .setContentText(someText) .setDefaults(Notification.DEFAULT_SOUND) .setAutoCancel(true);

Creo que esa es la forma más fácil de lograr su tarea.


Yo tenía más o menos la misma pregunta. Después de investigar un poco, creo que si quieres reproducir el "sonido de notificación" predeterminado del sistema, tienes que mostrar una notificación y decirle que use el sonido predeterminado. Y hay algo que decir para el argumento en algunas de las otras respuestas que si está reproduciendo un sonido de notificación, también debería presentar algún mensaje de notificación.

Sin embargo, hay un pequeño ajuste de la API de notificación y puede acercarse a lo que desea. Puede mostrar una notificación en blanco y luego eliminarla automáticamente después de unos segundos. Creo que esto funcionará para mí; tal vez funcionará para ti.

He creado un conjunto de métodos de conveniencia en com.globalmentor.android.app.Notifications.java que te permiten crear un sonido de notificación como este:

Notifications.notify(this);

El LED también parpadeará y, si tiene permiso de vibración, se producirá una vibración. Sí, aparecerá un icono de notificación en la barra de notificaciones, pero desaparecerá después de unos segundos.

En este punto, puede darse cuenta de que, dado que la notificación desaparecerá de todos modos, también podría tener un mensaje de texto desplegable en la barra de notificaciones; puedes hacer eso así:

Notifications.notify(this, 5000, "This text will go away after five seconds.");

Hay muchos otros métodos de conveniencia en esta clase. Puede descargar toda la biblioteca desde su repositorio Subversion y compilarla con Maven. Depende de la biblioteca globalmentor-core , que también se puede construir e instalar con Maven.


Intent intent = new Intent(this, MembersLocation.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); intent.putExtra("type",type); intent.putExtra("sender",sender); PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 /* Request code */, intent, PendingIntent.FLAG_ONE_SHOT); String channelId = getString(R.string.default_notification_channel_id); Uri Emergency_sound_uri=Uri.parse("android.resource://"+getPackageName()+"/raw/emergency_sound"); // Uri Default_Sound_uri= RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); if(type.equals("emergency")) { playSound=Emergency_sound_uri; } else { playSound= Settings.System.DEFAULT_NOTIFICATION_URI; } NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId) .setSmallIcon(R.drawable.ic_notification) .setContentTitle(title) .setContentText(body) .setSound(playSound, AudioManager.STREAM_NOTIFICATION) .setAutoCancel(true) .setColor(getColor(R.color.dark_red)) .setPriority(NotificationCompat.PRIORITY_HIGH) .setContentIntent(pendingIntent); // notificationBuilder.setOngoing(true);//for Android notification swipe delete disabling... NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); // Since android Oreo notification channel is needed. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { NotificationChannel channel = new NotificationChannel(channelId, "Channel human readable title", NotificationManager.IMPORTANCE_HIGH); AudioAttributes att = new AudioAttributes.Builder() .setUsage(AudioAttributes.USAGE_NOTIFICATION) .setContentType(AudioAttributes.CONTENT_TYPE_SPEECH) .build(); channel.setSound(Emergency_sound_uri, att); if (notificationManager != null) { notificationManager.createNotificationChannel(channel); } } if (notificationManager != null) { notificationManager.notify(0 /* ID of notification */, notificationBuilder.build()); } }