iOS - AudioServicesPlay 短頻音效播放


前言

	extern void AudioServicesPlayAlertSound(SystemSoundID inSystemSoundID) __OSX_AVAILABLE_STARTING(__MAC_10_5,__IPHONE_2_0);
	@available(iOS 2.0, *) public func AudioServicesPlayAlertSound(inSystemSoundID: SystemSoundID)
  • 系統聲音服務(System Sound Services)提供了一個接口,用於播放不超過 30 秒的聲音。它支持的文件格式有限,具體地說只有 CAF、AIF 和使用 PCM 或 IMA/ADPCM 數據的 WAV 文件。由於這些函數沒有提供操縱聲音和控制音量的功能,所以當你為多媒體或者游戲創建專門的配樂時,不要使用系統聲音服務。

  • iOS 使用系統聲音服務來支持三種不同的通知:

    • 1、聲音:立刻播放一個簡單的聲音文件。如果手機被設置為靜音,用戶什么也聽不到。
    • 2、提醒:播放一個聲音文件,如果手機被設置為靜音或震動,將通過震動提醒用戶。
    • 3、震動:震動手機,而不考慮其他設置。
  • 短頻音效播放(系統提示音):

    • 添加庫文件:AudioToolbox.framework
    • 包含頭文件:#import <AudioToolbox/AudioToolbox.h>

1、短頻音效播放

  • Objective-C

      	// 添加庫文件:AudioToolbox.framework
      	// 包含頭文件:#import <AudioToolbox/AudioToolbox.h>
    
    	// 聲明要保存音效文件的變量
      	SystemSoundID soundID;
    
    	// 加載文件
    	NSURL *fileURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"音效" ofType:@"caf"]];
    	AudioServicesCreateSystemSoundID((__bridge CFURLRef)(fileURL), &soundID);
    	
    	// 播放短頻音效
    	AudioServicesPlayAlertSound(soundID);
    
     	// 增加震動效果,如果手機處於靜音狀態,提醒音將自動觸發震動
    	AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);
    
  • Swift

    	// 添加庫文件:AudioToolbox.framework
    	// 包含頭文件:import AudioToolbox
       
      	// 聲明要保存音效文件的變量
    	var soundID:SystemSoundID = 0
    
    	// 加載文件
       	let fileUrl = NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("音效", ofType: "caf")!)
    	AudioServicesCreateSystemSoundID(fileUrl, &soundID)
    	
    	// 播放短頻音效
    	AudioServicesPlayAlertSound(soundID)
    
       	// 增加震動效果,如果手機處於靜音狀態,提醒音將自動觸發震動
    	AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate));
    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM