助理 RECORD_HEALTH_OBSERVATION 缺失值

Assistant RECORD_HEALTH_OBSERVATION missing value

我正在尝试与 actions.intent.RECORD_HEALTH_OBSERVATION 集成以在应用程序中跟踪体重。一切似乎都通过 App Actions 测试工具 (v3.2.0) 工作,但是当我尝试通过与 Google 助手对话进行测试时,实际重量值(例如 180)不存在——所有其他参数都显示符合预期。

我的actions.xml:

<actions>
    <action intentName="actions.intent.RECORD_HEALTH_OBSERVATION">
        <fulfillment urlTemplate="myapp://track-weight?referrer=assistant{&amp;weightValue,weightUnits}">
        <parameter-mapping
            intentParameter="healthObservation.value.value"
            urlParameter="weightValue" />
        <parameter-mapping
            intentParameter="healthObservation.value.unitText"
            urlParameter="weightUnits" />
        </fulfillment>
    </action>
</actions>

测试工具显示:

{
"@context": "http://schema.googleapis.com",
"@type": "HealthObservation",
"value": {
    "@type": "QuantitativeValue",
    "unitText": "Kilogram",
    "value": "83"
}

同样,当通过应用程序操作测试 tool/adb 进行测试时,weightValueweightUnits 都出现了预期值——但是当说 "Ok Google, record that I weigh 180 kilograms with My App" 时,然后 只有 weightUnits出现在查询字符串中。

现在应该可以解决这个问题。如果它对您不起作用,请告诉我。另外,如果有效,请将此问题标记为已解决。