Tôi đang phát một tệp .wav nhỏ bằng cách sử dụng AudioToolBox.AudioServicesPlaySystemSound không phát âm thanh
AudioServicesPlaySystemSound (soundFileObject);
Nhưng đôi khi nó không phát.
Lý do là gì?
Tôi đang phát một tệp .wav nhỏ bằng cách sử dụng AudioToolBox.AudioServicesPlaySystemSound không phát âm thanh
AudioServicesPlaySystemSound (soundFileObject);
Nhưng đôi khi nó không phát.
Lý do là gì?
Nếu bạn đang ở trong Trình mô phỏng, hãy đảm bảo rằng trong Hệ thống tiền âm thanh → Âm thanh, rằng "Hiệu ứng âm thanh giao diện người dùng đang phát" không bị tắt. Nếu bạn đang ở trên thiết bị, hãy kiểm tra xem công tắc chuông không được đặt ở chế độ im lặng hay không.
Tùy chọn hệ thống → Âm thanh → [x] Phát âm thanh giao diện người dùng - hộp kiểm này đã giúp tôi, giải quyết vấn đề AudioServicesPlaySystemSound (_). Nhưng đáng chú ý là dự án Apple Xcode mẫu "SysSound" làm việc tốt mà không cần kiểm tra hộp này. Tôi đang sử dụng Xcode 4.4.1 để tạo ứng dụng riêng từ đầu. Có thể có sự khác biệt giữa các dự án được tạo bằng các công cụ Xcode cũ hơn và mới hơn không?
Có thể vấn đề là this? AudioServicesDisposeSystemSoundID()
sẽ ngừng hoạt động âm thanh trước khi phát.
Trên thiết bị, đi vào cài đặt và bật lên âm lượng trên Sounds-> Ringer and Alerts
Xây dựng về câu trả lời user1056521 của, sử dụng đoạn mã sau:
AudioServicesPlaySystemSoundWithCompletion(soundID, ^{
AudioServicesDisposeSystemSoundID(soundID);
});
nơi soundID
là giá trị SystemSoundID
bạn nhận được khi bạn gọi là AudioServicesCreateSystemSoundID()
.
Khối hoàn thành đảm bảo âm thanh được phát và hoàn thành phát trước khi nó được xử lý.
Tôi không thể tìm thấy bất kỳ "Tùy chọn hệ thống" nào. Chúng có trong thiết bị mô phỏng hoặc trong ứng dụng giả lập không? –
Ý tôi là trên Mac OS X, trong Tùy chọn hệ thống của máy tính. – lucius
Tôi sẽ không bao giờ nghĩ về điều này - cảm ơn bạn! –