我遇到了AIR 3.4和新的Kindle Fire(第二代,非HD)的问题。 没有麦克风,正如亚马逊的比较图表所示:https://developer.amazon.com/sdk/fire/specifications.html,但AIR告诉我有一个麦克风。 它还会为Camera.isSupported和CameraUI.isSupported报告值TRUE。
所以这是关于Kindle Fire的独家新闻:
到目前为止,我知道处理此问题的最佳指标是使用“android.os.Build.MODEL”来禁用第一代Kindle的麦克风使用。 虽然这有点笨拙。 它也不允许我正确处理第二代Fire,因为没有办法(我知道)确定用户是否插入了麦克风。
你们中的任何人都知道一种更可靠的检查方法吗?
编辑:这是我创建的一个测试项目,用于说明问题:
<?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上运行此程序会导致屏幕上显示以下值:
相机:是的
CameraUI:true
麦克风:true =&gt; [对象麦克风]