У меня есть приложение с чатом. Каждый раз, когда в чате приходит сообщение надо проигрывать определённый звук. Звук нестандартный, он лежит в res/raw.
Я пробовал:
MediaPlayer mp = MediaPlayer.create(getApplicationContext(), R.raw.chat_sound);
mp.start();
Но тут два недостатка:
Как мне проиграть собственный звуковой файл как уведомление?
Добавьте параметр sound в вашему объекту уведомления:
Notification notification = new Notification(...);
...
notification.sound = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE +
"://" + getPackageName() + "/" + R.raw.notificationsound );
Либо через билдер:
NotificationCompat.Builder builder = new NotificationCompat.Builder(context);
...
builder.setSound(Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE +
"://" + getPackageName() + "/" + R.raw.notificationsound ););
...
Notification notification = builder.build();
Сборка персонального компьютера от Artline: умный выбор для современных пользователей