您的位置:首页 > 移动开发 > IOS开发

iPhone检测是否存在耳麦

2014-01-15 10:00 302 查看
         相信大家都看到过很多iPhone检测耳机插入/拔出的文章,比如http://blog.csdn.net/onlyou930/article/details/7442596里面提到的检测代码确实是可行的。但是我们在使用时经常会忘了重要的初始化步骤

         AudioSessionInitialize(NULL, NULL, NULL, NULL);

         如果少了这条初始化代码,就会导致程序在运行到if((route==NULL)||(CFStringGetLength(route)==0))处时报出EXC_BREAKPOINT的错误。

        而如果要检测是否存在耳麦,则必须得在初始化后添加上这条语句

        [[AVAudioSession sharedInstance] setActive: YES error:NULL];

        如果少了这条语句,那么遇到带耳麦的耳机,其route值就会一直是"Headphone",即没有识别到耳麦,只有加上了这条语句,route值才会变为"HeadsetInOut"
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息