IntentRequest QML类型
每个实例代表一个 outgoing 或 incoming 意图请求。更多...
导入声明 | import QtApplicationManager 2.0 |
属性
- applicationId : string
- broadcast : bool
(since 6.5)
- direction : IntentRequest::Direction
- errorMessage : string
- intentId : string
- parameters : var
- requestId : uuid
- requestingApplicationId : string
- result : var
- succeeded : bool
信号
方法
- sendErrorReply(string errorMessage)
- sendReply(var result)
详细描述
此类型既用于应用程序,也用于系统UI来表示意图请求。此类型不能直接实例化,但将通过 IntentClient::sendIntentRequest() 返回(对系统的 outgoing 请求)和 IntentHandler::requestReceived() 返回(对应用的 incoming 请求)
请参阅IntentClient类型以获取发送系统意图请求的简短示例。
IntentHandler文档提供了当收到系统请求时使用此类型的示例。
属性文档
applicationId : string |
应处理此请求的应用程序的id。如果没有指定特定应用程序,则返回空字符串。
注意: 常量,在 sent 和 received 请求上都有效。
broadcast : bool |
如果接收到的请求是广播,仅设置为 true
。
注意: 仅在 received 请求上有效。
此属性自Qt 6.5引入。
方向 : IntentRequest::Direction |
此属性描述此实例是一个出站或入站意图请求。
- IntentRequest.ToSystem - 请求对象由 IntentClient::sendIntentRequest() 生成,即此请求被发送到系统端进行处理。
- IntentRequest.ToApplication - 请求对象由 IntentHandler::requestReceived() 接收,即此请求是从系统端发送到应用程序进行处理的。
注意: 常量,在 sent 和 received 请求上都有效。
errorMessage : string |
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 |
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 公司的商标。所有其他商标均为各自所有者的财产。