WebUIContactMessageActivatedEventArgs 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
在激活应用以向联系人发送消息时提供数据。
public ref class WebUIContactMessageActivatedEventArgs sealed : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
/// [Windows.Foundation.Metadata.ContractVersion(Windows.ApplicationModel.Activation.ContactActivatedEventsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
class WebUIContactMessageActivatedEventArgs final : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.ApplicationModel.Activation.ContactActivatedEventsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
public sealed class WebUIContactMessageActivatedEventArgs : IActivatedEventArgs, IContactMessageActivatedEventArgs, IActivatedEventArgsDeferral
Public NotInheritable Class WebUIContactMessageActivatedEventArgs
Implements IActivatedEventArgs, IActivatedEventArgsDeferral, IContactMessageActivatedEventArgs
- 继承
- 属性
- 实现
Windows 要求
设备系列 |
Windows Desktop Extension SDK (在 10.0.10240.0 中引入)
|
API contract |
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (在 v1.0 中引入)
|
示例
JavaScript
function activated(eventObject) {
if (eventObject.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.contact) {
if (eventObject.detail.verb === Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.message) {
//get contact display info
var contactName = eventObject.detail.contact.displayName;
var contactThumbnail = eventObject.detail.contact.thumbnail;
if (eventObject.detail.serviceId === "telephone") {
var phoneNumber = eventObject.detail.serviceUserId;
//add messaging logic for PSTN numbers
}
else if (eventObject.detail.serviceId === "skype.com") {
var userId = eventObject.detail.serviceUserId;
//add messaging logic for Skype Ids
}
}
}
}
注解
当为 WinJS.Application.Onactivated 或 Windows.UI.WebUI.WebUIApplication.activated 事件实现事件处理程序时,当 与 ActivationKind联系时,将访问此对象。
注意
此类不是敏捷类,这意味着需要考虑其线程模型和封送处理行为。 有关详细信息,请参阅 线程处理和封送处理 (C++/CX) 。
Windows 8.1允许用户通过联系人卡片或 Windows 搜索体验向其联系人发送消息。 通过实现联系人消息激活协定,Windows 可以启动你的应用来向用户发送消息。
若要接收消息激活,你的应用必须在其清单中注册“windows.contact”扩展类别。 在此扩展下,必须包含一个“LaunchAction”元素,其“Verb”属性等于“message”。然后,可以指定“ServiceId”元素来指定你支持的消息传送类型。 例如,如果应用处理标准短信,则可以指定“ServiceId”为“电话”。如果你的应用通过基于 Web 的服务(如 Skype)处理消息传送,你可以指定该服务的域名,例如“skype.com”。
如果多个应用已注册此合约,则用户可以选择其中一个应用作为处理消息的默认应用。
下面是清单注册的示例:
<m2:Extension Category="windows.contact" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest">
<m2:Contact>
<m2:ContactLaunchActions>
<m2:LaunchAction Verb="message" DesiredView="useLess">
<m2:ServiceId>telephone</m2:ServiceId>
</m2:LaunchAction>
<m2:LaunchAction Verb="message" DesiredView="useLess">
<m2:ServiceId>skype.com</m2:ServiceId>
</m2:LaunchAction>
</m2:ContactLaunchActions>
</m2:Contact>
</m2:Extension>
在清单中注册后,可以针对联系人消息合约激活应用。 激活应用后,可以使用事件信息来标识消息激活,并提取有助于完成用户消息传送方案的参数。
下面是处理 PSTN 号码和 Skype ID 的联系人消息激活所需的代码示例:
属性
ActivatedOperation |
获取应用激活的操作。 |
Contact |
获取消息的联系人。 |
Kind |
获取激活类型。 |
PreviousExecutionState |
获取激活前的应用的执行状态。 |
ServiceId |
获取用于消息的服务的标识符。 |
ServiceUserId |
获取用于消息的服务的用户标识符。 |
SplashScreen |
获取初始屏幕对象,该对象提供有关从初始屏幕到激活应用转换的信息。 |
Verb |
获取要执行的操作。 |