ContactPostActivatedEventArgs Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece dados quando um aplicativo é ativado para postar um contato.
Javascript Esse tipo aparece como WebUIContactPostActivatedEventArgs.
public ref class ContactPostActivatedEventArgs sealed : IActivatedEventArgs, IContactPostActivatedEventArgs
/// [Windows.Foundation.Metadata.ContractVersion(Windows.ApplicationModel.Activation.ContactActivatedEventsContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class ContactPostActivatedEventArgs final : IActivatedEventArgs, IContactPostActivatedEventArgs
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.ApplicationModel.Activation.ContactActivatedEventsContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class ContactPostActivatedEventArgs : IActivatedEventArgs, IContactPostActivatedEventArgs
Public NotInheritable Class ContactPostActivatedEventArgs
Implements IActivatedEventArgs, IContactPostActivatedEventArgs
- Herança
- Atributos
- Implementações
Requisitos do Windows
Família de dispositivos |
Windows Desktop Extension SDK (introduzida na 10.0.10240.0)
|
API contract |
Windows.ApplicationModel.Activation.ContactActivatedEventsContract (introduzida na v1.0)
|
Exemplos
Aqui está um exemplo do código que você precisa para lidar com ativações de postagem de contato para IDs do Facebook.
protected override void OnActivated(IActivatedEventArgs args)
{
if (args.Kind == ActivationKind.Contact)
{
var contactArgs = args as IContactActivatedEventArgs;
if (contactArgs.Verb == Windows.ApplicationModel.Contacts.ContactLaunchActionVerbs.Post)
{
IContactPostActivatedEventArgs postArgs = contactArgs as IContactPostActivatedEventArgs;
//get contact display info
var contactName = postArgs.Contact.DisplayName;
var contactThumbnail = postArgs.Contact.Thumbnail;
if (postArgs.ServiceId == "facebook.com")
{
var userId = postArgs.ServiceUserId;
//add posting logic for Facebook 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::Post())
{
auto postArgs{ contactArgs.as<Windows::ApplicationModel::Activation::ContactPostActivatedEventArgs>() };
// Get contact display info.
auto contactName{ postArgs.Contact().DisplayName() };
auto contactThumbnail{ postArgs.Contact().Thumbnail() };
if (postArgs.ServiceId() == L"facebook.com")
{
auto userId = postArgs.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::Post)
{
auto postArgs = dynamic_cast<ContactPostActivatedEventArgs^>(contactArgs);
//get contact display info
auto contactName = postArgs->Contact->DisplayName;
auto contactThumbnail = postArgs->Contact->Thumbnail;
if (postArgs->ServiceId == "facebook.com")
{
auto userId = postArgs->ServiceUserId;
//add posting logic for Facebook Ids
}
}
}
}
Comentários
Windows 8.1 permite que os usuários postem em seus contatos a partir do Cartão de Visita ou da experiência do Windows Search. Ao implementar o contrato de ativação pós-contato, o Windows pode iniciar seu aplicativo para postar para o usuário.
Para receber ativações pós-ativações, seu aplicativo deve se registrar para a categoria de extensão "windows.contact" em seu manifesto. Nessa extensão, você deve incluir um elemento "LaunchAction" com o atributo "Verbo" igual a "post". Em seguida, você pode especificar o elemento "ServiceId" para especificar o nome de domínio do serviço no qual seu aplicativo pode postar, por exemplo , "facebook.com".
Se vários aplicativos tiverem se registrado para esse contrato, o usuário poderá escolher um deles como padrão para lidar com a postagem.
Aqui está um exemplo de registro de manifesto.
<m2:Extension Category="windows.contact" xmlns:m2="http://schemas.microsoft.com/appx/2013/manifest">
<m2:Contact>
<m2:ContactLaunchActions>
<m2:LaunchAction Verb="post" DesiredView="useLess">
<m2:ServiceId>facebook.com</m2:ServiceId>
</m2:LaunchAction>
</m2:ContactLaunchActions>
</m2:Contact>
</m2:Extension>
Depois que você se registrar no manifesto, seu aplicativo poderá ser ativado para o contrato de postagem de contato. Quando seu aplicativo é ativado, você pode usar as informações de evento para identificar a pós-ativação e extrair os parâmetros que ajudam você a concluir o cenário de postagem para o usuário.
Propriedades
Contact |
Obtém o contato da postagem. |
Kind |
Obtém o tipo de ativação. |
PreviousExecutionState |
Obtém o estado de execução do aplicativo antes de ser ativado. |
ServiceId |
Obtém o identificador do serviço usado para a postagem. |
ServiceUserId |
Obtém o identificador de usuário do serviço usado para a postagem. |
SplashScreen |
Obtém o objeto de tela inicial, que fornece informações sobre a transição da tela inicial para o aplicativo ativado. |
Verb |
Obtém a ação a ser executada. |