2016-12-16 23 views
0

私はKindle Fireで使用する拡張通信アプリケーションを開発しています。ファイアHD 6をテストデバイスとして使用しています。私はXamarin、C#で働いています。Kindle Fire HD 6の音声認識機能へのアクセス

キーボードにマイクアイコンが表示されるため、デバイスに音声認識機能があり、これを使用して検索ウィンドウを作成できます。しかし、私のandoid音声認識コードは機能しません。 「レコグナイザが存在しません」というエラーが表示されます。ここで私が働いているコードは次のとおりです。

public class VoiceRecognition : Activity 
{ 
private static String TAG = "VoiceRecognition"; 
private const int VOICE_RECOGNITION_REQUEST_CODE = 1234; 
private ListView mList; 
public Handler mHandler; 
private Spinner mSupportedLanguageView; 

protected override void OnCreate(Bundle savedInstanceState) 
{ 
base.OnCreate(savedInstanceState); 
mHandler = new Handler(); 

SetContentView(Resource.Layout.Main); 
Button speakButton = FindViewById<Button>(Resource.Id.btnRecord); 

// Check to see if a recognition activity is present 
PackageManager pm = PackageManager; 
IList<ResolveInfo> activities = pm.QueryIntentActivities(new Intent(RecognizerIntent.ActionRecognizeSpeech), 0); 

if (activities.Count != 0) 
speakButton.Click += speakButton_Click; 
else 
{ 
speakButton.Enabled = false; 
speakButton.Text = "Recognizer not present"; 
} 

} 

このコードは明らかに仕事に行くのではありませんが、私はどこここから行くするかわかりません。このデバイスの音声認識装置にはどのようにアクセスできますか?

ありがとうございます!

答えて

0

SpeechRecognizerで音声認識装置に接続しようとすることができます(ほとんどのキーボードアプリケーションで対応しています)。

もう1つのことは、RecognizerIntentアクティビティを呼び出すときの別のアクションです。 ACTION_WEB_SEARCHもあります。

0

ただし、私のandoid音声認識コードは機能していません。 「レコグナイザが存在しません」というエラーが表示されます。

Android搭載デバイスの標準音声APIを使用しているようですが、コードを確認して機能を有効にしても音声認識機能が動作しない場合は、スタンダードのアンドロイドApisに従うのではなく、Kindleの公式のApisに従ってください。

Alexa Voice Service API Overviewこの公式文書を見ると、HTTPを使ってSpeechRecognizerのJSON形式のメッセージを送受信するようです。あなたは試してみることができます。