Muszę odtworzyć dźwięk systemu, gdy użytkownicy klikną przycisk w mojej aplikacji na iPadzie. Jak wdrożyć to w systemie iOS?Jak odtwarzać dźwięk kliknięcia przycisku systemowego na iPadzie?
5
A
Odpowiedz
11
Jeśli chcesz grać krótki dźwięk (krócej niż 30 sekund), można to łatwo zrobić tak:
Uwaga: Będziesz mieć aby dodać AudioToolbox ramy i zaimportować go (#import <AudioToolbox/AudioToolbox.h>
)
SystemSoundID mySSID;
NSString *path = [[NSBundle mainBundle] pathForResource:@"beep" ofType:@"wav"];
AudioServicesCreateSystemSoundID((CFURLRef)[NSURL fileURLWithPath: path], &mySSID);
AudioServicesPlaySystemSound(mySSID);
Należy również pamiętać, że plik może być:
- Nie dłużej niż 30 sekund, w czasie trwania
- W PCM (liniowe lub IMA4/ADPCM IMA) format
- Pakowane w .caf, .aif lub .wav pliku
3
Powinieneś używać AVAudioPlayer.
Istnieje świetny samouczek here dotyczący używania AVAudioPlayer do odtwarzania dźwięków. Bardzo prosty przykład na jego zastosowanie:
NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/audiofile.mp3",dataPath];
NSError *error;
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
if (audioPlayer == nil)
NSLog([error description]);
else
[audioPlayer play];
+0
Wielkiej !! Ale czy można odtwarzać dźwięk systemu? Nie chcę wgrywać od czasu do czasu czegoś nowego ... Trochę jak standardowy dźwięk kliknięcia przycisku iPhone – Radislav
0
NSString *path = [[NSBundle mainBundle] pathForResource:@"gorilla 2" ofType:@"mp3"];
AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate=self;
[theAudio play];
Powiązane problemy
- 1. Wyłącz dźwięk kliknięcia przycisku w Androidzie
- 2. Jak wykryć kliknięcia przycisku systemowego "Ostatnie aplikacje" (Honeycomb +)
- 3. Jak odtwarzać dźwięk jak najszybciej?
- 4. iOS - Jak odczytać dźwięk ze strumienia i odtwarzać dźwięk
- 5. Jak odtwarzać dźwięk z biblioteki w AS3?
- 6. Qt - jak nagrywać i odtwarzać dźwięk jednocześnie
- 7. Jak odtwarzać dźwięk (alert) w aplikacji java?
- 8. Jak odtwarzać dźwięk w Qt5 (migracja Qt4)?
- 9. Jak odtwarzać dźwięk w tle Swift?
- 10. Jak odtwarzać dźwięk powiadomienia z Androidem
- 11. Jak mogę odtwarzać dźwięk w WinForms?
- 12. Jak mogę odtwarzać dźwięk w rozszerzeniu chrome
- 13. Jak odtwarzać dźwięk, jeśli przekazujemy NSData?
- 14. Ustawić przycisk ToggleButton, aby odtwarzać dźwięk domyślny po kliknięciu?
- 15. Jak odtwarzać dźwięk z natywnego aparatu na Androidzie
- 16. jak odtwarzać dźwięk z mikrofonu do głośnika bezpośrednio na Androidzie?
- 17. Jak sprawdzić dźwięk kliknięcia klawiatury iPhone'a włączonego/wyłączonego w ustawieniach?
- 18. Jak $ _POST bez kliknięcia przycisku?
- 19. Zwiększenie powierzchni kliknięcia przycisku
- 20. Dźwięk HTML5 ze skryptem PHP nie działa na iPadzie/Iphone
- 21. iść do łączenia na kliknięcia przycisku - jquery
- 22. Jak odtwarzać dźwięk podczas połączenia telefonicznego z systemem Android?
- 23. Jak odtwarzać dźwięk w systemie Linux za pomocą C?
- 24. Jak odtwarzać dźwięk po uruchomieniu testów jednostkowych w Visual Studio
- 25. Jak odtwarzać dźwięk, gdy aktualny czas jest równy określonemu czasowi?
- 26. Jak płynnie odtwarzać dźwięk za pomocą api web audio
- 27. Jak odtwarzać dźwięk ze strumienia w czasie rzeczywistym?
- 28. AVFoundation: Obsługa wideo w OpenGL - Jak odtwarzać i synchronizować dźwięk?
- 29. Jak odtwarzać dźwięk przez głośniki, a nie przez słabsze głośniki?
- 30. Jak w aplikacji odtwarzać dźwięk w tle (phonegap 1.5.0 na iOS)?
Świetny !! Ale czy można odtwarzać dźwięk systemu? Nie chcę wgrać od razu żadnego nowego ... Brzmi jak standardowy dźwięk kliknięcia przycisku iPhone. – Radislav
Nie jestem tego pewien ... Chociaż wiem na pewno, że można użyć dźwięku "wibracji" systemu. Jeśli coś znajdę, dam ci znać. – Alladinian
+1 dla lepszego rozwiązania dla krótkich dźwięków systemowych –