2012-02-19 29 views
10

Tôi cần vòng lặp phát tệp .caf trong ứng dụng iPhone của mình.Nút Tắt tiếng sẽ không tắt tiếng AVAudioPlayer

Trình xem AVAudioPlayer trông đầy hứa hẹn. Nhưng có một vấn đề. Nó sẽ không dừng hoặc tắt tiếng ngay cả khi tôi nhấn nút tắt tiếng trên iPhone.

Và tôi hiểu rằng sẽ không có cách nào để lập trình tìm hiểu xem rằng nút mute được nhấn hay không trong iOS 5.

Vì vậy, những gì tôi cần phải biết có thể là một số tính chất về AVAudioPlayer hoặc AVAudioSession. Hoặc, có lẽ, tôi có thể cần phải xem xét các thư viện khác để lặp lại chơi tập tin .caf của tôi.

Bất kỳ ý tưởng nào?

Trả lời

23

tôi nhận ra đó là vì tôi đã có dòng mã này

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: nil]; 

sau đó tôi đã thay đổi nó thành

[[AVAudioSession sharedInstance] setCategory: AVAudioSessionCategoryAmbient error: nil]; 

Sau đó, nút mute sẽ làm việc và dừng AVAudioPlayer tôi ...

+0

Chính xác những gì tôi cần! – rockstarberlin

+0

Rất vui được. :) –

0

2 xu của tôi cho nhanh chóng 3.0:

let sharedSession = AVAudioSession.sharedInstance() 

do { 
    try sharedSession.setCategory(AVAudioSessionCategoryAmbient) 
} catch _{ 
    return false 
} 

hoặc đơn giản hơn:

try? sharedSession.setCategory(AVAudioSessionCategoryAmbient) 
Các vấn đề liên quan