Как воспроизводить звук по умолчанию TICK?

Я хочу подключить звук Android по умолчанию по умолчанию (например, звук, который вы слышите, когда вы долго нажимаете кнопку «Главная» и выбираете предыдущее приложение для запуска) с помощью моей кнопки. Я знаю, как воспроизводить звуки через MediaPlayer, но я не знаю, где искать этот звук по умолчанию. Это должно было быть в некоторых ресурсах по умолчанию, но я не мог найти его.

MediaPlayer mp = MediaPlayer.create(getBaseContext(), sound); mp.setLooping(false); mp.start(); 

Кто-нибудь может помочь?

PS. Этот звук будет активирован внутри метода onClick.
PPS. Я знаю, что могу использовать user / raw dir, но я не думаю, что в этом есть необходимость. Нельзя сказать, что более прохладно играть в этот тик-звук, подготовленный для телефона пользователя.

Я думаю, что звук, который вы ищете, находится и находится в /system/media/audio/ui/KeypressStandard.ogg

Я думаю, вы можете SetDataSource этот путь к API-интерфейсу SetDataSource . Но я не уверен, будет ли он иметь одно и то же имя на всех телефонах Android.

Возможно, лучший способ запросить звук щелчка по умолчанию.

ПРИМЕЧАНИЕ. Это довольно старый и неправильный ответ. Пожалуйста, проверьте @Roberto Tyley ответ ниже.

Вы можете воспроизводить звук «тика» по умолчанию Android, используя метод view.playSoundEffect() для любого вида. На удивление достаточно, что все представления могут воспроизводить различные звуки системы:

 view.playSoundEffect(SoundEffectConstants.CLICK); 

Это, наверное, самый простой ответ на вашу проблему 🙂

Если вы хотите контролировать громкость звука, используйте системную службу AudioManager . Плюс это можно использовать из Сервиса, если у вас нет удобного представления.

 // get the AudioManager once onCreate or similar audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); ... // Play a System Sound audioManager.playSoundEffect(SoundEffectConstants.CLICK); // OR at 50% Volume audioManager.playSoundEffect(SoundEffectConstants.CLICK, 0.5F); 

Если вы находитесь в Google GLASS, вы можете использовать константы com.google.android.glass.media.Sounds

 audioManager.playSoundEffect(Sounds.TAP); 

В Sounds включены следующие

НЕПРЕРЫВНО, ОШИБКА, УСПЕХ, ТАР, ОТБОР, ОТМЕТЬТЕ

Ответ Роберто Тейли правильный.

Вы можете воспроизводить звук со всех точек зрения, просто называя его так:

 Button01.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { v.playSoundEffect(SoundEffectConstants.CLICK); } }); 

Просто обратите внимание, что звук не будет воспроизводиться, если по умолчанию отключены звуки касания. Это задано в настройках звука устройства (Настройки -> Звук -> Звук или на новой ОС: Опции> Звук> Прикосновение)

Кроме того, если этот параметр установлен, большинство событий щелчка в любом случае вызовут звук щелчка!

Вы можете использовать тик, звуковой сигнал или любой встроенный звук с помощью генератора тона

 ToneGenerator toneG = new ToneGenerator(AudioManager.STREAM_ALARM, 100); toneG.startTone(ToneGenerator.TONE_CDMA_ALERT_CALL_GUARD, 200);