informasi kontak saya
Surat[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Terutama dibagi menjadi 3 langkah:
AudioServicesCreateSystemSoundID
Buat suara sistem.AudioServicesAddSystemSoundCompletion
Setel panggilan balik.AudioServicesPlaySystemSound
Mulai bermain.tentang AudioServicesPlaySystemSound
fungsi:
Fungsi ini memutar suara pendek (durasi 30 detik atau kurang). Karena suara mungkin diputar selama beberapa detik, fungsi ini dilakukan secara asinkron.Untuk mengetahui kapan suara selesai diputar, hubungiAudioServicesAddSystemSoundCompletion
fungsi untuk mendaftarkan fungsi panggilan balik.
Di beberapa perangkat iOS, Anda bisa AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)
untuk memanggil getaran. Di perangkat iOS lain, memanggil fungsi ini dengan konstanta ini tidak berpengaruh.
Berikut ini adalah batasan file audio yang dapat diputar oleh fungsi ini:
.caf
, .aif
, atau .wav
mengajukanNamun nyatanya, file AAC juga dapat diputar secara normal. Selain itu, fungsi ini memiliki banyak keterbatasan:
Kode inti:
- (void)btnClick:(UIButton *)sender
{
self.mButton.hidden = YES;
NSURL *audioUrl = [[NSBundle mainBundle] URLForResource:@"music" withExtension:@"aac"];
SystemSoundID soundID;
// create a system sound object
AudioServicesCreateSystemSoundID((__bridge CFURLRef)audioUrl, &soundID);
// register a callback function that is invoked when a specified system sound finishes playing
AudioServicesAddSystemSoundCompletion(soundID, NULL, NULL, &playCallback, (__bridge void *_Nullable)(self));
// play a system sound object
AudioServicesPlaySystemSound(soundID);
}
void playCallback(SystemSoundID ssID, void *clientData)
{
ViewController *vc = (__bridge ViewController *)clientData;
vc->_mButton.hidden = NO;
}
Alamat proyek: https://github.com/UestcXiye/AudioToolboxSystemSound.