我正在创建一个相机应用程序,当用户说“自拍”时将捕获图像。任何人请帮助,因为我不知道如何使用语音识别器。如果您可以共享代码,那将非常有用。
我有想法,但我不知道如何整合它:
1-语音识别器接受用户的输入。
2-比较它与“自拍”使用IF语句如果匹配捕获图片,如果没有吐司再说。
答案 0 :(得分:0)
试试这个
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, "en-US");
intent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS,1);
startActivityForResult(intent,requestcode);
然后重写OnActivityResult()方法,如果比较匹配自拍,则调用Camera Intent
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==101) {
ArrayList<String> matches_text = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
if(matches_text.get(0).equals("selfie"))
{
Intent cam=new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cam,requestcode);
}
else
{
Toast.makeText(getApplicationContext(),"Please try again",LENGTH_LONG).show()
}