Android Flash mobile开发-如何使用AIR 3.4检测麦克风可用性?
我在AIR 3.4和新款Kindle Fire(第二代,非高清)上遇到了一个问题。 正如亚马逊的对比图表所示,这里没有麦克风,但AIR告诉我这里有麦克风。 它还报告Camera.isSupported和CameraUI.isSupported的值TRUE 以下是关于Kindle Fire的独家报道:Android Flash mobile开发-如何使用AIR 3.4检测麦克风可用性?,android,mobile,air,microphone,Android,Mobile,Air,Microphone,我在AIR 3.4和新款Kindle Fire(第二代,非高清)上遇到了一个问题。 正如亚马逊的对比图表所示,这里没有麦克风,但AIR告诉我这里有麦克风。 它还报告Camera.isSupported和CameraUI.isSupported的值TRUE 以下是关于Kindle Fire的独家报道: 第一代Kindle Fire不支持从空中捕获音频(即使连接了外部麦克风)。有关详细信息,请参阅: 第二代Kindle Fire不支持音频捕获,除非连接了外部麦克风。然而,我不知道在AIR中有什么方
- 第一代Kindle Fire不支持从空中捕获音频(即使连接了外部麦克风)。有关详细信息,请参阅:
- 第二代Kindle Fire不支持音频捕获,除非连接了外部麦克风。然而,我不知道在AIR中有什么方法可以区分耳机和否,因为microscope.isSupported总是返回TRUE
- Kindle Fire HD支持带或不带外部麦克风的音频捕获
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" applicationComplete="init()"
xmlns:s="library://ns.adobe.com/flex/spark" applicationDPI="160">
<fx:Script>
<![CDATA[
private function init():void {
cameraLabel.text = "Camera: " + Camera.isSupported.toString();
cameraUILabel.text = "CameraUI: " + CameraUI.isSupported.toString();
microphoneLabel.text = "Microphone: " + Microphone.isSupported.toString() + " => " + Microphone.getMicrophone();
}
]]>
</fx:Script>
<s:VGroup horizontalCenter="0" verticalCenter="0">
<s:Label id="cameraLabel" />
<s:Label id="cameraUILabel" />
<s:Label id="microphoneLabel" />
</s:VGroup>
</s:Application>
在第二代Kindle Fire上运行此程序会在屏幕上显示以下值:
摄影机:是的
卡美罗:是的
麦克风:true=>[对象麦克风]
如果在实际不受支持的设备上执行Mirror.GetMirror(),会发生什么情况?我想你会得到
null
返回。这可能是此场景中最好的测试。不幸的是,micromic.getmicromic()返回一个micromic对象。(另外,在何时何地调用麦克风.getMirror(),您必须格外小心。这是一个静态方法,不幸的是,调用两次会断开/孤立第一次调用返回的麦克风对象。除了必要的地方,我尽量避免在任何地方使用它。)我已经添加了一个测试应用程序(在我的初始帖子中)这向您展示了我所做的尝试和得到的结果。如果您执行adb shell ls/dev/snd/,您会得到什么?是否有名为pcmCxDyc
(其中x和y为数字;通常您对pcmC0D0c感兴趣)的设备?那就是PCM捕获设备。啊。有:$adb外壳ls/dev/snd/controlC0 pcmC0D0p pcmC0D1c pcmC0D1p pcmC0D2c pcmC0D3c pcmC0D3p pcmC0D4c pcmC0D4p pcmC0D5c pcmC0D5p定时器