ContactMessageActivatedEventArgs Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt Daten bereit, wenn eine App zum Senden einer Nachricht an einen Kontakt aktiviert wird.
Javascript Dieser Typ wird als WebUIContactMessageActivatedEventArgs angezeigt.
public ref class ContactMessageActivatedEventArgs sealed : IActivatedEventArgs, IContactMessageActivatedEventArgs
/// [Windows.Foundation.Metadata.ContractVersion(Windows.ApplicationModel.Activation.ContactActivatedEventsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class ContactMessageActivatedEventArgs final : IActivatedEventArgs, IContactMessageActivatedEventArgs
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.ApplicationModel.Activation.ContactActivatedEventsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class ContactMessageActivatedEventArgs : IActivatedEventArgs, IContactMessageActivatedEventArgs
Public NotInheritable Class ContactMessageActivatedEventArgs
Implements IActivatedEventArgs, IContactMessageActivatedEventArgs
- Vererbung
- Attribute
- Implementiert
Windows-Anforderungen
Gerätefamilie |
Windows Desktop Extension SDK (eingeführt in 10.0.10240.0)
|
API contract |
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (eingeführt in v1.0)
|
Beispiele
Im Folgenden finden Sie ein Beispiel für den Code, den Sie für die Aktivierung von Kontaktnachrichten für PSTN-Nummern und Skype-IDs benötigen.
protected override void OnActivated(IActivatedEventArgs args)
{
if (args.Kind == ActivationKind.Contact)
{
var contactArgs = args as IContactActivatedEventArgs;
if (contactArgs.Verb == Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.Message)
{
IContactMessageActivatedEventArgs messageArgs = contactArgs as IContactMessageActivatedEventArgs;
//get contact display info
var contactName = messageArgs.Contact.DisplayName;
var contactThumbnail = messageArgs.Contact.Thumbnail;
if (messageArgs.ServiceId == "telephone")
{
var phoneNumber = messageArgs.ServiceUserId;
//add messaging logic for PSTN numbers
}
else if (messageArgs.ServiceId == "skype.com")
{
var userId = messageArgs.ServiceUserId;
//add messaging logic for Skype Ids
}
}
}
}
void App::OnActivated(Windows::ApplicationModel::Activation::IActivatedEventArgs const& args)
{
if (args.Kind() == Windows::ApplicationModel::Activation::ActivationKind::Contact)
{
auto contactArgs{ args.as<Windows::ApplicationModel::Activation::IContactActivatedEventArgs>() };
if (contactArgs.Verb() == Windows::ApplicationModel::Contacts::ContactLaunchActionVerbs::Message())
{
auto messageArgs{ contactArgs.as<Windows::ApplicationModel::Activation::ContactMessageActivatedEventArgs>() };
// Get contact display info.
auto contactName{ messageArgs.Contact().DisplayName() };
auto contactThumbnail{ messageArgs.Contact().Thumbnail() };
if (messageArgs.ServiceId() == L"telephone")
{
auto phoneNumber = messageArgs.ServiceUserId();
// Add messaging logic for PSTN numbers.
}
else if (messageArgs.ServiceId() == L"skype.com")
{
auto userId = messageArgs.ServiceUserId();
// Add messaging logic for Skype Ids.
}
}
}
}
void App::OnActivated(IActivatedEventArgs^ args)
{
if (args->Kind == ActivationKind::Contact)
{
auto contactArgs = dynamic_cast<IContactActivatedEventArgs^>(args);
if (contactArgs->Verb == Windows::ApplicationModel::Contacts::ContactLaunchActionVerbs::Message)
{
auto messageArgs = dynamic_cast<ContactMessageActivatedEventArgs^>(contactArgs);
//get contact display info
auto contactName = messageArgs->Contact->DisplayName;
auto contactThumbnail = messageArgs->Contact->Thumbnail;
if (messageArgs->ServiceId == "telephone")
{
auto phoneNumber = messageArgs->ServiceUserId;
//add messaging logic for PSTN numbers
}
else if (messageArgs->ServiceId == "skype.com")
{
auto userId = messageArgs->ServiceUserId;
//add messaging logic for Skype Ids
}
}
}
}
Hinweise
Windows 8.1 ermöglicht Es Benutzern, ihren Kontakten eine Nachricht über die Visitenkarte oder Windows Search-Benutzeroberfläche zu senden. Durch die Implementierung des Vertrags zur Aktivierung von Kontaktnachrichten kann Windows Ihre App starten, um Nachrichten für den Benutzer zu senden.
Um Nachrichtenaktivierungen zu empfangen, muss sich Ihre App für die Erweiterungskategorie "windows.contact" in ihrem Manifest registrieren. Unter dieser Erweiterung müssen Sie ein "LaunchAction"-Element mit dem Attribut "Verb" einschließen, das gleich "message" ist. Anschließend können Sie das "ServiceId"-Element angeben, um den Typ des von Ihnen unterstützten Messagings anzugeben. Wenn Ihre App beispielsweise Standard-Textnachrichten verarbeitet, können Sie eine "ServiceId" von "Telefon" angeben. Wenn Ihre App Messaging über einen webbasierten Dienst wie Skype verarbeitet, können Sie den Domänennamen dieses Diensts angeben, z. B. "skype.com".
Wenn mehrere Apps für diesen Vertrag registriert wurden, kann der Benutzer eine davon als Standard für die Verarbeitung von Nachrichten auswählen.
Hier sehen Sie ein Beispiel für die Manifestregistrierung.
<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>
Nachdem Sie sich in Ihrem Manifest registriert haben, kann Ihre App für den Vertrag mit der Kontaktnachricht aktiviert werden. Wenn Ihre App aktiviert ist, können Sie die Ereignisinformationen verwenden, um die Nachrichtenaktivierung zu identifizieren und die Parameter zu extrahieren, mit denen Sie das Messagingszenario für den Benutzer abschließen können.
Informationen zum Behandeln der App-Aktivierung über Kontaktaktionen finden Sie unter Schnellstart: Behandeln von Kontaktaktionen .
Eigenschaften
Contact |
Ruft den Kontakt für die Nachricht ab. |
Kind |
Ruft den Aktivierungstyp ab. |
PreviousExecutionState |
Ruft den Ausführungsstatus der App ab, bevor sie aktiviert wurde. |
ServiceId |
Ruft den Bezeichner des Diensts ab, der für die Nachricht verwendet wird. |
ServiceUserId |
Ruft den Benutzerbezeichner des Diensts ab, der für die Nachricht verwendet wird. |
SplashScreen |
Ruft das Begrüßungsbildschirmobjekt ab, das Informationen zum Übergang vom Begrüßungsbildschirm zur aktivierten App bereitstellt. |
Verb |
Ruft die auszuführende Aktion ab. |