WebUIContactCallActivatedEventArgs 类

定义

在激活应用以呼叫联系人时提供数据。

public ref class WebUIContactCallActivatedEventArgs sealed : IActivatedEventArgs, IContactCallActivatedEventArgs, IActivatedEventArgsDeferral
/// [Windows.Foundation.Metadata.ContractVersion(Windows.ApplicationModel.Activation.ContactActivatedEventsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
class WebUIContactCallActivatedEventArgs final : IActivatedEventArgs, IContactCallActivatedEventArgs, IActivatedEventArgsDeferral
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.ApplicationModel.Activation.ContactActivatedEventsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Standard)]
public sealed class WebUIContactCallActivatedEventArgs : IActivatedEventArgs, IContactCallActivatedEventArgs, IActivatedEventArgsDeferral
Public NotInheritable Class WebUIContactCallActivatedEventArgs
Implements IActivatedEventArgs, IActivatedEventArgsDeferral, IContactCallActivatedEventArgs
继承
Object Platform::Object IInspectable WebUIContactCallActivatedEventArgs
属性
实现

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.call) {

     //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 calling logic for PSTN numbers
            }
     else if (eventObject.detail.serviceId === "skype.com") {
                var userId = eventObject.detail.serviceUserId;
  //add calling logic for Skype Ids
            }
        }
    }
}

注解

当为 WinJS.Application.OnactivatedWindows.UI.WebUI.WebUIApplication.activated 事件实现事件处理程序时,当 与 ActivationKind联系时,将访问此对象。

注意

此类不是敏捷类,这意味着需要考虑其线程模型和封送处理行为。 有关详细信息,请参阅 线程处理和封送处理 (C++/CX)

Windows 8.1允许用户从联系人卡片或 Windows 搜索体验呼叫其联系人。 通过实现联系人呼叫激活合约,Windows 可以启动你的应用来为用户发起呼叫。

若要接收呼叫激活,你的应用必须在其清单中注册“windows.contact”扩展类别。 在此扩展下,必须包含一个“LaunchAction”元素,其“Verb”属性等于“call”。然后,可以指定“ServiceId”元素,以指定支持的调用类型。 例如,如果应用处理标准 PSTN 呼叫,则可以将“ServiceId”指定为“电话”。如果你的应用通过基于 Web 的服务(如 Skype)处理呼叫,则可以指定该服务的域名,例如“skype.com”。

如果多个应用已注册此合约,则用户可以选择其中一个应用作为处理呼叫的默认应用。

注意

若要使用户能够将你的应用设置为 PSTN 号码的默认呼叫应用,你的应用还必须支持“tel”URI 方案。

下面是清单注册的示例:

<m2:Extension Category="windows.contact" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest">
  <m2:Contact>
    <m2:ContactLaunchActions>
      <m2:LaunchAction Verb="call" DesiredView="useLess">
        <m2:ServiceId>telephone</m2:ServiceId>
        <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

获取要执行的操作。

适用于

另请参阅