2013-05-29 45 views
5

Trong ứng dụng của tôi tại thời điểm cụ thể, tôi đang cảnh báo người dùng bằng âm thanh tiếng bíp mà tôi đang phát bằng cách sử dụng AVAudioPlayer.Phát âm thanh trong nền bằng AVAudioPlayer mà không dừng nhạc ipod

Bây giờ tôi muốn phát âm thanh này ngay cả khi ứng dụng ở trong nền. Vì vậy, tôi có thể đạt được điều này bằng cách thiết lập AVAudioSession loại là AVAudioSessionCategoryPlayback và tôi cũng muốn rằng âm thanh này không nên dừng âm nhạc ipod và tôi có thể làm điều đó với nó thiết lập AVAudioPlayer loại AVAudioSessionCategoryAmbient.

Nhưng tôi muốn chúng cùng nhau có nghĩa là âm thanh cũng nên phát trong nền và nó cũng không nên dừng âm nhạc ipod.

Vậy làm cách nào tôi có thể đạt được điều này?

Nếu không thể phát âm thanh với loại AVAudioSessionCategoryAmbient ở chế độ nền thì có cách nào khác không?

Xin lỗi nếu tôi đang phạm sai lầm.

Cảm ơn.

+0

pleae hãy xem này: -http: //stackoverflow.com/questions/7619794/play-music-in-the-background-using-avaudioplayer –

+0

nó không làm việc – Unnati

+0

Bạn có thể không có phát lại nền mà không dừng nhạc iPod (hoặc bất kỳ ứng dụng chơi nền nào khác). – rckoenes

Trả lời

4

bạn cần thêm một hàng vào tệp project.plist Required background modes như hình dưới đây và đặt nó.

enter image description here

và đặt mã dưới đây để appdelegate dự án của bạn didFinishLaunchingWithOptions

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:nil]; 
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; 
    [[AVAudioSession sharedInstance] setActive: YES error: nil]; 
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 
    NSError *error; 
    BOOL success = [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:&error]; 
    if (!success) { 
     //Handle error 
     NSLog(@"%@", [error localizedDescription]); 
       } else { 
        // Yay! It worked! 
       } 

làm việc của nó cho tôi hy vọng nó hữu ích cho bạn frnd tôi al tốt nhất.

CẬP NHẬT

Bạn không thể chạy AVAudioPlayer và máy nghe nhạc iPod hoặc MPMusicPlayer hoặc MPMoviePlayer cùng một lúc, mà không làm việc nhiều hơn một chút. Nếu bạn muốn dễ dàng, hãy sử dụng Âm thanh hệ thống của Hộp công cụ âm thanh.

vui lòng tham khảo liên kết này dưới đây: -

iPhone AVAudioPlayer stopping background music

Vui lòng kiểm tra dưới đây liên kết có bản demo của Playing tập tin âm thanh ở chế độ nền. xin vui lòng kiểm tra xem nó

http://mobile.tutsplus.com/tutorials/iphone/ios-sdk_background-audio/

+0

Tính năng này không hoạt động khi ứng dụng ở chế độ nền. – Unnati

+0

kiểm tra câu trả lời đã chỉnh sửa của tôi và kiểm tra bản demo –

+0

nó hoạt động ở chế độ nền nhưng nó dừng nhạc ipod. – Unnati

Các vấn đề liên quan