我需要你的帮助 我正在开发一个语音识别应用程序,它执行诸如打电话,发送消息和熟悉的东西等动作。 我设法在我的应用程序中编程语音识别,它工作得很好,但我似乎无法理解如何执行这些操作,例如,如果我告诉应用程序“打电话迈克尔”,它是如何在编码中完成的?如何在代码中编写调用action \ sms动作? 我真的很感激任何帮助!
这是一段代码,描述了我如何通过语音识别获得单词动作:
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
//check speech recognition result
if (requestCode == VOICE_REC_CODE_REQUEST && resultCode == RESULT_OK)
{
//store the returned word list as an ArrayList
ArrayList<String> suggestedWords= data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
startExecutingActions(suggestedWords);
}
super.onActivityResult(requestCode, resultCode, data);
}
问题是,我如何执行这些动作\命令,如;调用,发送短信,搜索网页,导航等等,并在startExecutingActions(suggestedWords)函数中使用它们?
答案 0 :(得分:2)
在给某人打电话的给定示例中,您需要通过电话操作启动新意图。 以下是common intents。
的列表我们假设您认识到用户想要拨打特定号码(通过在电话簿中查找姓名)。然后你可以拨打你的&#34; dialNumber&#34;用电话号码的方法。
public void dialNumber(String pNumber){
Intent intent = new Intent(Intent.ACTION_PHONE);
intent.setData(Uri.parse("tel:" + pNumber));
if (intent.resolveActivity(getActivity().getPackageManager()) != null) {
startActivity(intent);
};
}
您需要确保您的应用在AndroidManifest.xml中具有所有必需的权限。
答案 1 :(得分:1)