gpt4 book ai didi

android - Google Now 与应用程序集成

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:05:05 24 4
gpt4 key购买 nike

我正在尝试构建一个语音控制的应用程序,它可以根据命令执行一些任务。
我还想为它添加 Google Now 功能,这样如果用户询问一些问题,例如天气信息、新闻、名人等,我就可以从 Google Now 获得结果。

有什么方法可以将 Google Now 功能集成到我的应用中吗?

最佳答案

查看 Voice Reorganization in Android

您可以按如下方式实现它:

在负责触发语音 Intent 的按钮的单击事件上编写以下代码。

/**
* Instruct the app to listen for user speech input
*/
private void listenToSpeech() {
//start the speech recognition intent passing required data
Intent listenIntent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
//indicate package
listenIntent.putExtra(RecognizerIntent.EXTRA_CALLING_PACKAGE, getClass().getPackage().getName());
//message to display while listening
listenIntent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Say a word!");
//set speech model
listenIntent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
//specify number of results to retrieve
listenIntent.putExtra(RecognizerIntent.EXTRA_MAX_RESULTS, 10);
//start listening
startActivityForResult(listenIntent, VR_REQUEST);
}

当 Intent 回调时,我们显示转录的语音。

/**
* onActivityResults handles:
* - retrieving results of speech recognition listening
* - retrieving result of TTS data check
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//check speech recognition result
if (requestCode == VR_REQUEST && resultCode == RESULT_OK)
{
//store the returned word list as an ArrayList
ArrayList<String> suggestedWords = data.getStringArrayListExtra(RecognizerIntent.EXTRA_RESULTS);
//set the retrieved list to display in the ListView using an ArrayAdapter
wordList.setAdapter(new ArrayAdapter<String> (this, R.layout.word, suggestedWords));

//to open the result in browser
Intent intent = new Intent(Intent.ACTION_VIEW,
Uri.parse("https://www.google.co.in/?gws_rd=cr#q="+suggestedWords));
startActivity(intent);
}
//tss code here
//call superclass method
super.onActivityResult(requestCode, resultCode, data);
}

关于android - Google Now 与应用程序集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20139908/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com