IntentRequest QML类型

每个实例代表一个 outgoing 或 incoming 意图请求。更多...

导入声明import QtApplicationManager 2.0

属性

信号

方法

详细描述

此类型既用于应用程序,也用于系统UI来表示意图请求。此类型不能直接实例化,但将通过 IntentClient::sendIntentRequest() 返回(对系统的 outgoing 请求)和 IntentHandler::requestReceived() 返回(对应用的 incoming 请求)

请参阅IntentClient类型以获取发送系统意图请求的简短示例。

IntentHandler文档提供了当收到系统请求时使用此类型的示例。

属性文档

applicationId : string [只读]

应处理此请求的应用程序的id。如果没有指定特定应用程序,则返回空字符串。

注意: 常量,在 sent 和 received 请求上都有效。


broadcast : bool [只读,since 6.5]

如果接收到的请求是广播,仅设置为 true

注意: 仅在 received 请求上有效。

此属性自Qt 6.5引入。


方向 : IntentRequest::Direction [只读]

此属性描述此实例是一个出站或入站意图请求。

注意: 常量,在 sent 和 received 请求上都有效。


errorMessage : string [只读]

只要replyReceived()信号被触发,此属性将保留请求失败时的潜在错误信息。

注意:仅适用于已发送请求。

另请参阅:succeeded


intentId : string [只读]

请求的意图ID。

注意: 常量,在 sent 和 received 请求上都有效。


parameters : var [只读]

将请求作为JavaScript对象附加的所有参数。

注意: 常量,在 sent 和 received 请求上都有效。


requestId : uuid [只读]

系统中的每个意图请求都会获得一个由服务器分配的唯一requestId,此ID将用于请求的整个生命周期中(请求应用程序、处理应用程序和意图服务器)。

注意:由于此requestId由服务器生成,因此由 IntentClient::sendIntentRequest() 生成的任何 IntentRequest 对象都将以null requestId开始。属性将在服务器为传入请求分配新requestId后异步更新。

注意:对于由IntentHandlers接收的请求是常量,适用于发送和接收请求。


requestingApplicationId : string [只读]

创建此意图请求的应用程序ID。如果从应用程序上下文调用,则返回空字符串 - 仅服务器端在 IntentServerHandler::requestReceived 中可以访问此信息。

注意: 常量,在 sent 和 received 请求上都有效。


result : var [只读]

只要replyReceived()信号被触发,此属性将保留成功请求的结果,形式为JavaScript对象。

注意:仅适用于已发送请求。

另请参阅:succeeded


succeeded : bool [只读]

只要replyReceived()信号被触发,此属性将显示意图请求是否真正成功。

注意:仅适用于已发送请求。


信号文档

replyReceived()

当意图请求的回复可用时,将触发此信号。信号处理程序需要检查succeeded属性,以确定errorMessage 或结果是否有效。

注意:此信号仅对由 IntentClient::sendIntentRequest() 创建的请求对象发出。

注意:对应的处理程序是 onReplyReceived.


方法文档

sendErrorReply(string errorMessage)

IntentHandlers 可以使用此函数来指出它们无法处理通过 IntentHandler::requestReceived() 接收到的请求,并在 errorMessage 中说明原因。

在单个 IntentRequest 上只能使用 sendReply() 或 sendErrorReply()。

注意:此函数仅在从 IntentHandler::requestReceived() 接收到的请求对象上工作。对于通过 IntentClient::sendIntentRequest() 创建的请求,它将简单地不执行任何操作。

另请参阅:sendReply.


sendReply(var result)

IntentHandler 需要调用此函数来通过 IntentHandler::requestReceived() 接收到的请求将 result 发送回系统。

在单个 IntentRequest 上只能使用 sendReply() 或 sendErrorReply()。

注意:此函数仅在从 IntentHandler::requestReceived() 接收到的请求对象上工作。对于通过 IntentClient::sendIntentRequest() 创建的请求,它将简单地不执行任何操作。

另请参阅:sendErrorReply.


© 2024 Qt 公司有限公司。包含在此处的文档贡献是各自所有者的版权。提供的文档受自由软件基金会发布、受版权法 lined 的 GNU Free Documentation License version 1.3 条款的许可。Qt 以及相应的标志是芬兰和/或其他国家的 The Qt 公司的商标。所有其他商标均为各自所有者的财产。