J'avais à peu près la même question. Après quelques recherches, je pense que si vous voulez jouer le "son de notification" du système par défaut, vous devez à peu près afficher une notification et lui dire d'utiliser le son par défaut. Et il y a quelque chose à dire pour l'argument dans certaines des autres réponses que si vous jouez un son de notification, vous devriez également présenter un message de notification.
Cependant, un peu de peaufinage de l'API de notification et vous pouvez vous rapprocher de ce que vous voulez. Vous pouvez afficher une notification vide, puis la supprimer automatiquement après quelques secondes. Je pense que cela fonctionnera pour moi; peut-être que cela fonctionnera pour vous.
J'ai créé un ensemble de méthodes pratiques dans com.globalmentor.android.app.Notifications.java
qui vous permettent de créer un son de notification comme ceci:
Notifications.notify(this);
La LED clignote également et, si vous avez la permission vibrent, une vibration se produira. Oui, une icône de notification apparaîtra dans la barre de notification mais disparaîtra après quelques secondes. À ce stade, vous pouvez réaliser que, puisque la notification disparaîtra de toute façon, vous pourriez aussi bien avoir un message défilant de défilement dans la barre de notification; vous pouvez le faire comme ceci:
Notifications.notify(this, 5000, "This text will go away after five seconds.");
Il existe de nombreuses autres méthodes pratiques dans cette classe. Vous pouvez télécharger la bibliothèque entière à partir de son Subversion repository et le construire avec Maven. Cela dépend du globalmentor-core library, qui peut également être construit et installé avec Maven.
Motorola téléphones par exemple étendu l'activité des préférences et permet à l'utilisateur de définir un son de notification pour les SMS et d'autres catégories. La méthode ci-dessus ne fonctionnera pas avec ce type de téléphones. Avez-vous une idée de la façon de résoudre ce problème? – David
J'ai une erreur avec ceci: 'MediaPlayer - Doit avoir le contrôleur de sous-titre déjà réglé'. Qu'est-ce que ça veut dire? – Deqing
En utilisant cette solution, après 28/29 fois, les sons cessent de jouer. Quelqu'un sait pourquoi? –