我开发了一款可用作自定义音乐播放器的iPhone应用程序。我设法将iPhone中所有歌曲的列表放到UITableView中。当我播放一首歌时,声音来自iPhone音频扬声器而不是蓝牙连接设备。
在这种情况下,我通过蓝牙将iPhone连接到谷歌眼镜。当在iPhone上收到电话时,我可以通过Google Glass耳机听到来电者的声音。但是,当我在我的应用程序中播放歌曲时,音频不会重定向到Glass耳机。音频通过iPhone的扬声器播放。我原本想要的是通过蓝牙连接设备播放音乐,
请告知我有关从蓝牙连接设备而非电话扬声器传输音频的正确方法。
我写的应该这样做的代码如下:
AVAudioSession* audioSession = [AVAudioSession sharedInstance];
[audioSession setDelegate:self];
[audioSession setCategory: AVAudioSessionCategoryPlayAndRecord error: nil];
[audioSession setActive: YES error: nil];
// set up for bluetooth microphone input
UInt32 allowBluetoothInput = 1;
OSStatus stat = AudioSessionSetProperty (
kAudioSessionProperty_OverrideCategoryEnableBluetoothInput,
sizeof (allowBluetoothInput),
&allowBluetoothInput
);
NSLog(@"status = %x", (int)stat); // problem if this is not zero
// check the audio route
UInt32 size = sizeof(CFStringRef);
CFStringRef route;
OSStatus result = AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &size, &route);
NSLog(@"route = %@", route);
NSLog(@"result = %d", (int)result);
CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef soundFileURLRef;
SystemSoundID soundFileObject;
soundFileURLRef = CFBundleCopyResourceURL (mainBundle,CFSTR ("bomb"),CFSTR ("wav"),NULL);
AudioServicesCreateSystemSoundID (soundFileURLRef,&soundFileObject);
AudioServicesPlaySystemSound (soundFileObject);
提前感谢您的帮助!
答案 0 :(得分:1)
目前,Glass不能用作音乐的通用蓝牙耳机,因为它不支持A2DP蓝牙配置文件。