WebUIContactMessageActivatedEventArgs Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce i dati quando un'app viene attivata per inviare un messaggio a un contatto.
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
- Ereditarietà
- Attributi
- Implementazioni
Requisiti Windows
Famiglia di dispositivi |
Windows Desktop Extension SDK (è stato introdotto in 10.0.10240.0)
|
API contract |
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (è stato introdotto in v1.0)
|
Esempio
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
}
}
}
}
Commenti
Questo oggetto viene accessibile quando si implementa un gestore eventi per WinJS.Application.Onactivated o Windows.UI.WebUI.WebUI.WebUIApplication.trigger quando ActivationKind è contatto.
Nota
Questa classe non è agile, il che significa che è necessario considerare il relativo modello di threading e il comportamento di marshalling. Per altre informazioni, vedere Threading e marshalling (C++/CX).
Windows 8.1 consente agli utenti di inviare messaggi ai propri contatti dall'esperienza Contact Card o Windows Search. Implementando il contratto di attivazione del messaggio di contatto, Windows può avviare l'app per inviare messaggi per l'utente.
Per ricevere le attivazioni dei messaggi, l'app deve registrarsi per la categoria di estensione "windows.contact" nel relativo manifesto. In questa estensione è necessario includere un elemento "LaunchAction" con l'attributo "Verb" uguale a "message". È quindi possibile specificare l'elemento "ServiceId" per specificare il tipo di messaggistica supportata. Ad esempio, se l'app gestisce i messaggi di testo standard, è possibile specificare un "ServiceId" di "telefono". Se l'app gestisce la messaggistica su un servizio basato sul Web, ad esempio Skype, è possibile specificare il nome di dominio di tale servizio, ad esempio "skype.com".
Se più app sono state registrate per questo contratto, l'utente può sceglierne uno come impostazione predefinita per la gestione dei messaggi.
Ecco un esempio per la registrazione del manifesto:
<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>
Dopo aver registrato il manifesto, l'app può essere attivata per il contratto del messaggio di contatto. Quando l'app viene attivata, è possibile usare le informazioni sull'evento per identificare l'attivazione del messaggio ed estrarre i parametri che consentono di completare lo scenario di messaggistica per l'utente.
Ecco un esempio del codice che è necessario gestire le attivazioni dei messaggi di contatto per i numeri PSTN e Gli ID Skype:
Proprietà
ActivatedOperation |
Ottiene l'operazione attivata dall'app. |
Contact |
Ottiene il contatto per il messaggio. |
Kind |
Ottiene il tipo di attivazione. |
PreviousExecutionState |
Ottiene lo stato di esecuzione dell'app prima dell'attivazione. |
ServiceId |
Ottiene l'identificatore del servizio usato per il messaggio. |
ServiceUserId |
Ottiene l'identificatore utente del servizio usato per il messaggio. |
SplashScreen |
Ottiene l'oggetto schermata iniziale, che fornisce informazioni sulla transizione dalla schermata iniziale all'app attivata. |
Verb |
Ottiene l'azione da eseguire. |