【问题标题】:How to send a text query to Google Assistant from Android app如何从 Android 应用向 Google 助理发送文本查询
【发布时间】:2018-11-10 01:51:23
【问题描述】:

我正在尝试启动 Google 助理并在我按下按钮时从我的应用中发送一个文本问题(不是语音)。例如:我点击一个按钮,Google 助理就会回答我的问题“今天天气怎么样?”。

这可能吗?

编辑: 当我按下按钮时,我希望 Google 助理执行一些操作并提供语音反馈。 例如:“查看明天的天气并将闹钟设置为早上 6.30”。

【问题讨论】:

    标签: android google-assistant-sdk


    【解决方案1】:

    看起来您可以直接从包类名中引用它。

    String queryString = "How is the weather today?";
    Intent intent = new Intent(Intent.ACTION_WEB_SEARCH);
    intent.setClassName("com.google.android.googlequicksearchbox", 
                        "com.google.android.googlequicksearchbox.SearchActivity");
    intent.putExtra("query", queryString);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);
    

    【讨论】:

    • 我希望 Google 助理执行一些操作并提供语音反馈,而不仅仅是打开 Google 应用并搜索天气。
    【解决方案2】:

    如果您已经在使用 Assistant SDK,那非常简单。只需将 AudioInConfig 替换为文本查询即可。这是我的做法:

    AssistConfig config = AssistConfig.newBuilder()
        .setTextQuery("Your text query goes here!")
        //.setAudioInConfig(audioInConfig)
        .setAudioOutConfig(audioOutConfig)
        .setDeviceConfig(deviceConfig)
        .setDialogStateIn(dialogStateIn)
        .setScreenOutConfig(screenOutConfig)
        .build();
    AssistRequest request = AssistRequest.newBuilder().setConfig(config).build();
    

    然后通过 gRPC 将请求发送到服务器,您将收到语音回复。

    【讨论】:

    • 我以前从未使用过Assistant SDK,目前我正尝试在我的Android项目中使用它,所以我现在无法使用此代码。
    猜你喜欢
    • 2018-03-31
    • 2021-10-04
    • 2018-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多