600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > android 自定义唤醒词 如何在Android上获得语音唤醒

android 自定义唤醒词 如何在Android上获得语音唤醒

时间:2018-08-21 21:53:09

相关推荐

android 自定义唤醒词 如何在Android上获得语音唤醒

我首先提出这个简单的方法。

开始使用简单的设置来匹配你想要的,如下面的类的关键字:如果失败介绍

@Override

protected void

onActivityResult(int requestCode, int resultCode, Intent data)

{

WordMatcher matchHello = new WordMatcher("hello");

WordMatcher matchJack = new WordMatcher("jack");

if (requestCode == VOICE_RECOGNITION_REQUEST_CODE)

{

if (resultCode == RESULT_OK)

{

List heard =

data.

getStringArrayListExtra

(RecognizerIntent.EXTRA_RESULTS);

for (String oneResult : heard)

{

if (matchHello.isIn(oneResult.split(" ")) && matchJack.isIn(oneResult.split(" "))

{

//SUCCESS!! do something here

}

}

}

else

{

Log.d(TAG, "error code: " + resultCode);

}

}

super.onActivityResult(requestCode, resultCode, data);

}

二:

public class WordMatcher

{

private Set words;

public static final int NOT_IN = -1;

public WordMatcher(String... wordsIn)

{

this(Arrays.asList(wordsIn));

}

public WordMatcher(List wordsIn)

{

//care about order so we can execute isInAt

words = new LinkedHashSet(wordsIn);

}

public Set getWords()

{

return words;

}

public boolean isIn(String word)

{

return words.contains(word);

}

public boolean isIn(String [] wordsIn)

{

boolean wordIn = false;

for (String word : wordsIn)

{

if (isIn(word))

{

wordIn = true;

break;

}

}

return wordIn;

}

过程的识别结果是这样“听起来像”匹配算法,如Soundex。

此外,您可能希望直接调查使用SpeechRecognizer类来在后台运行语音识别,而不是使用生成对话框的RecognizerIntent。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。