WebUIContactMessageActivatedEventArgs 클래스

정의

앱이 활성화되어 연락처에 메시지를 표시할 때 데이터를 제공합니다.

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
상속
Object Platform::Object IInspectable WebUIContactMessageActivatedEventArgs
특성
구현

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
            }
        }
    }
}

설명

이 개체는 ActivationKind접촉할 때 WinJS.Application.Onactivated 또는 Windows.UI.WebUI.WebUIApplication.activated 이벤트에 대한 이벤트 처리기를 구현할 때 액세스됩니다.

참고

이 클래스는 민첩하지 않으므로 스레딩 모델 및 마샬링 동작을 고려해야 합니다. 자세한 내용은 스레딩 및 마샬링(C++/CX)을 참조하세요.

Windows 8.1 통해 사용자는 연락처 카드 또는 Windows Search 환경에서 연락처에 메시지를 보낼 수 있습니다. Windows는 연락처 메시지 활성화 계약을 구현하여 앱을 시작하여 사용자에게 메시지를 보낼 수 있습니다.

메시지 활성화를 받으려면 앱이 매니페스트의 "windows.contact" 확장 범주에 등록해야 합니다. 이 확장에서 "Verb" 특성이 "message"와 같은 "LaunchAction" 요소를 포함해야 합니다. 그런 다음 "ServiceId" 요소를 지정하여 지원하는 메시징 유형을 지정할 수 있습니다. 예를 들어 앱이 표준 문자 메시지를 처리하는 경우 "전화"의 "ServiceId"를 지정할 수 있습니다. 앱이 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

수행할 작업을 가져옵니다.

적용 대상

추가 정보