Cuối cùng tìm thấy nó - Sau khi khởi tạo đối tượng Phiên âm thanh , - AudioSessionInitialize() - bạn có thể thực hiện cuộc gọi đến AudioSessionGetProperty và nhận giá trị của kAudioSessionProperty_AudioInputAvailable.
AudioSessionInitialize(NULL, NULL, NULL, NULL);
UInt32 propertySize, micConnected;
AudioSessionGetProperty(kAudioSessionProperty_AudioInputAvailable, &propertySize, &micConnected);
[self updateMicStatus:micConnected]; // user-created method
Theo tài liệu cho Dịch vụ phiên âm thanh, nên sử dụng thay vì sử dụng kiểu thiết bị (iPhone và iPod Touch) để xác định xem đầu vào âm thanh có sẵn để sử dụng hay không. Bạn cũng có thể thiết lập chức năng gọi lại để giám sát các thay đổi đối với thuộc tính này qua AudioSessionAddPropertyListener().
Không chắc chắn nếu thuộc tính này cũng áp dụng cho các thiết bị được kết nối qua đầu nối Dock, nhưng nó có vẻ hoạt động với giắc cắm tai nghe.
Nguồn
2009-03-20 22:43:02
Vì một số lý do, điều này không hiệu quả đối với tôi. Trên iPod Touch thế hệ thứ 2 không có tai nghe, nó trả về TRUE ... – Dimitris