2016-04-21 151 views
0

我想知道是否有任何方法通过Ionic检测耳机是否插入移动设备(本例中为iPhone)。我们的Io​​nic应用程序播放声音,没有耳机听起来很好,但耳机插入时会产生一些不可思议的结果。通过Ionic检测耳机

如果您没有耳机启动应用程序,则插入它们,应用程序会不断发出嗡嗡声。如果您在插入耳机后启动应用程序,听起来很不错,但如果拔下耳机,声音不会从扬声器播放,尽管应用程序认为声音在播放。这一切都很奇怪。有什么建议?

回答

2

你可以试试这个插件:如果您要检查在启动 https://github.com/EddyVerbruggen/HeadsetDetection-PhoneGap-Plugin

,你可以把它里面$ionicPlatform.ready这样的:

window.plugins.headsetdetection.detect(function (detected) { 
      alert("Headphone " + detected) 
}) 

不然,如果你想检查任何点击链接或功能你可以把它像这样:

HTML:

<button class="button button-stable" ng-click="checkHeadphone()"> 

JS:

$scope.checkHeadphone = function() { 
     window.plugins.headsetdetection.detect(function (detected) { 
      alert("Headphone " + detected) 
     }) 
    } 

于是就按一下按钮,它会检查,如果耳机检测

注意:请构建/为您安装插件后的平台编写的代码,如果你仍然得到'undefined'的错误

这应该适用于iOS或安卓系统

+0

我该如何才能真正将它用于离子?我已经安装了插件,但是当我尝试上面的代码时,它给出了这个错误: 未捕获的TypeError:无法读取未定义的属性'detect' –

+0

@BenjaminMathers更新了答案 – HardikDG