Compartilhar via


Reprodução Automática para aplicativos de dispositivo UWP

Importante

Os metadados do dispositivo foram preteridos e serão removidos numa versão futura do Windows. Para obter informações sobre a substituição dessa funcionalidade, consulte Metadados de Contêiner do Pacote de Driver.

Os fabricantes de dispositivos podem especificar seu aplicativo de dispositivo UWP como um manipulador de AutoPlay para seu dispositivo. Eles também podem permitir que outros aplicativos UWP atuem como manipuladores de AutoPlay para seu dispositivo. Este artigo descreve como usar o Assistente de Criação de Metadados de Dispositivo para habilitar a Reprodução Automática. No seu aplicativo, ele também descreve como lidar com ativações do AutoPlay. Para obter mais informações sobre aplicativos de dispositivo, consulte Conheça os aplicativos de dispositivo UWP.

Você não precisa usar metadados de dispositivo para todos os tipos de Reprodução Automática. Sem metadados do dispositivo, a Reprodução Automática permite que você forneça seu aplicativo como uma opção quando um usuário conecta um dispositivo a um computador. Esses dispositivos podem ser dispositivos sem volume, como uma câmera ou media player, ou dispositivos com volume, como um pen drive, cartão SD ou DVD. A Reprodução Automática também permite registrar seu aplicativo como uma opção quando os usuários compartilham arquivos entre duas máquinas usando Proximidade (toque). Mas seu aplicativo não pode ser instalado automaticamente sem metadados do dispositivo. Para obter mais informações sobre como usar a Reprodução Automática quando os metadados do dispositivo não forem necessários, consulte Iniciar automaticamente com a Reprodução Automática.

Visão geral da AutoPlay

Dependendo da versão do seu aplicativo, você pode habilitar a Reprodução Automática destas maneiras:

  • Somente seu aplicativo de dispositivo UWP pode lidar com a ativação de Reprodução Automática para seu dispositivo (com suporte no Windows 8, Windows 8.1).
  • Outros aplicativos UWP podem gerenciar a ativação do AutoPlay para seu dispositivo (suportado apenas no Windows 8.1).
  • Seu aplicativo de dispositivo UWP e outros aplicativos UWP podem lidar com a ativação de Reprodução Automática para seu dispositivo (com suporte apenas no Windows 8.1).

Este exemplo mostra uma caixa de diálogo de Reprodução Automática para um aplicativo chamado Painel Contoso que se registrou como manipulador de Reprodução Automática para o dispositivo Pedômetro Contoso:

caixa de diálogo de reprodução automática de exemplo para um dispositivo.

A reprodução automática oferece suporte a estes tipos de dispositivos ao usar metadados de dispositivo com seu aplicativo:

Classe de dispositivo AutoPlay com suporte no Windows 8 Suporte para AutoPlay no Windows 8.1
Câmera digital de fotos há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. a reprodução automática tem suporte para essa classe de dispositivo no Windows 8.1
Filmador de vídeo digital há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. a reprodução automática tem suporte para essa classe de dispositivo no Windows 8.1
Player de mídia portátil há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. a reprodução automática tem suporte para essa classe de dispositivo no Windows 8.1
Telefone celular há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. a reprodução automática tem suporte para essa classe de dispositivo no Windows 8.1
Banda larga móvel não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8.1
Webcam não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8.1
Dispositivo de interface humana (HID) não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. a reprodução automática tem suporte para essa classe de dispositivo no Windows 8.1
Impressoras, scanners, fax não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8.1
Computador não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8.1
Cartão inteligente não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. a reprodução automática tem suporte para essa classe de dispositivo no Windows 8.1
Porta geral não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. a reprodução automática tem suporte para essa classe de dispositivo no Windows 8.1
Dispositivo Bluetooth não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8. não há suporte para a reprodução automática para essa classe de dispositivo no Windows 8.1

Antes de começar

  • Verifique se você tem o Assistente de Criação de Metadados do Dispositivo. Você precisa dele para habilitar a Reprodução Automática. Nesta versão, esse assistente está incluído no Microsoft Visual Studio Professional e no Microsoft Visual Studio Ultimate. Porém, se você tiver o Microsoft Visual Studio Express para Windows, será necessário baixar o SDK autônomo para Windows 8.1 para obter o assistente.

  • Associe seu aplicativo à Microsoft Store. Você precisa das informações do pacote do aplicativo para ativar o AutoPlay. Para obter mais informações, consulte a seção Associar seu aplicativo à seção da Microsoft Store na Etapa 1: Criar um aplicativo de dispositivo UWP.

  • Crie os metadados do dispositivo. Para obter mais informações, consulte a Etapa 2: Criar metadados de dispositivo no guia passo a passo criar um aplicativo de dispositivo UWP .

Ativando a Reprodução Automática

O Assistente de Criação de Metadados de Dispositivo permite que você declare seu aplicativo UWP como o manipulador padrão de AutoPlay para seu dispositivo. Você também pode permitir que outros aplicativos UWP ajam como gestores de AutoPlay para seu dispositivo. Você pode escolher uma dessas opções ou ambas as opções.

Para habilitar o AutoPlay com o Assistente de Criação de Metadados do Dispositivo**

  1. Inicie o Assistente de Criação de Metadados do Dispositivo de %ProgramFiles(x86)%\Windows Kits\8.1\bin\x86, dando um duplo clique no DeviceMetadataWizard.exe.

  2. Para editar o pacote de metadados do dispositivo existente, selecione Editar Metadados do Dispositivo.

  3. Na caixa de diálogo Abrir , localize o pacote de metadados do dispositivo associado ao seu aplicativo de dispositivo UWP. (Ele tem uma extensão de arquivo devicemetadata-ms.)

  4. (Opcional.) Se você não tiver o nome do pacote do seu aplicativo de dispositivo, o nome do Publicador e a ID do Aplicativo à mão, selecione Informações do Aplicativo para exibir as informações de empacotamento para seu aplicativo de dispositivo UWP.

  5. Selecione Informações do Windows para especificar detalhes de Reprodução Automática.

  6. Se você quiser especificar um aplicativo para ser o manipulador de Reprodução Automática padrão para seu dispositivo, selecione Usar um aplicativo de dispositivo UWP. Você pode selecionar qualquer aplicativo UWP ou aplicativo de dispositivo UWP. No entanto, esse aplicativo deve lidar com a ativação do AutoPlay para seu dispositivo. O aplicativo também deve especificar a ID de experiência correspondente no manifesto do pacote do aplicativo (conforme especificado no próximo procedimento).

    • Nome do pacote: no manifesto do pacote do aplicativo, Nome do pacote é o atributo Name do elemento Identity.

    • Nome do publicador: no manifesto do pacote do aplicativo, o nome do Publicador é o atributo Publisher do elemento Identity.

    • ID do Aplicativo: no manifesto do pacote do aplicativo, o ID do Aplicativo é o atributo ID do elemento Application.

    • Verbo: Verbo é o identificador para a ativação do AutoPlay. Seu aplicativo o usa para determinar se a ativação veio do seu dispositivo. Você também pode usar qualquer valor para a configuração Verbo exceto open, que está reservado.

    • Tipo de evento de Reprodução Automática: deixe este campo definido como Dispositivo. Nos metadados do dispositivo, o assistente especifica automaticamente a ID da experiência associada ao seu aplicativo de dispositivo UWP.

  7. Se você quiser permitir que outros aplicativos atuem como manipuladores de Reprodução Automática para seu dispositivo, selecione Habilitar Reprodução Automática para aplicativos registrados.

  8. Quando terminar, clique em Avançar.

  9. Quando vir a página Concluir, anote o ID da experiência. Você precisará dele no próximo procedimento, ao lidar com a ativação de Reprodução Automática em seu aplicativo.

  10. Verifique suas informações de salvamento e selecione Salvar para atualizar o pacote de metadados do dispositivo.

Processando a ativação da Reprodução Automática

Para lidar com uma ativação de Reprodução Automática em seu aplicativo, registre uma extensão windows.autoPlayDevice no manifesto do pacote do aplicativo. Em seguida, manipule esse evento no evento OnActivated do objeto Application. Seu aplicativo pode se registrar como um manipulador de AutoPlay para vários dispositivos.

Para registrar seu aplicativo como um manipulador de Reprodução Automática

Para registrar seu aplicativo como um manipulador de AutoPlay para seu dispositivo, especifique a ID de experiência associada ao seu aplicativo UWP, o Verbo de AutoPlay e ActionDisplayName usados para ativar seu aplicativo.

  1. Abra o projeto do aplicativo no Microsoft Visual Studio.

  2. No Gerenciador de Soluções, clique com o botão direito do mouse no arquivo Package.appxmanifest e selecione Exibir Código. Essa opção exibe o manifesto do pacote do aplicativo no Editor XML (Texto).

  3. No elemento Application, abaixo do elemento VisualElements, cole o seguinte elemento Extensions dentro do arquivo de manifesto do pacote.

          <Extensions>
            <Extension Category="windows.autoPlayDevice">
              <AutoPlayDevice>
                <LaunchAction
                    Verb="showDevice1"
                    ActionDisplayName="Launch App for Device 1"
                    DeviceEvent="ExperienceID:{00000000-ABCD-EF00-0000-000000000000}"/>
              </AutoPlayDevice>
            </Extension>
          </Extensions>
    
  4. Substitua os valores de Reprodução Automática deste exemplo pelos valores reais do seu aplicativo:

    • Verb: o identificador para a ativação de Reprodução automática. Seu aplicativo o usa para determinar se a ativação veio do seu dispositivo. Se o aplicativo tiver sido especificado como o manipulador de Execução Automática padrão para seu dispositivo, esse valor deverá corresponder ao Verbo especificado nos metadados do dispositivo. Se seu aplicativo não foi especificado como o manipulador de Reprodução automática padrão para seu dispositivo, você pode usar qualquer valor para a configuração Verbo, exceto para open, que é reservado.

    • ActionDisplayName: a cadeia de caracteres exibida pelo AutoPlay para seu aplicativo.

    • Experience ID: o GUID de ID de experiência que associa seu aplicativo ao dispositivo. Esse GUID é o valor que você anotou no procedimento anterior.

Para gerenciar a ativação da Reprodução Automática

Quando o dispositivo acionar uma ativação de Reprodução automática, o tipo de ativação será Windows.ApplicationModel.Activation.ActivationKind.device. Para verificar como seu aplicativo foi ativado, use o eventObj objeto passado por OnActivated. Se foi da Reprodução Automática, você poderá usar eventObj para determinar qual ID de dispositivo e verbo de Reprodução Automática causou a ativação.

Neste exemplo, o parâmetro de evento de ativação (eventObj) carrega a ID do dispositivo e o verbo para ativação.

<!DOCTYPE html>
<html>
<head>
  <script type="text/javascript">
    function OnActivated(eventObj) {
        if (eventObj.kind == Windows.ApplicationModel.Activation.ActivationKind.launch) {
            // Activated by the user.
        }
        else if (eventObj.kind == Windows.ApplicationModel.Activation.ActivationKind.device) {
            // Activated by a device, for AutoPlay.
            // Device path = eventObj.deviceInformationId;
            // verb ("showDevice1") = eventObj.verb;
        }
    }

    Windows.UI.WebUI.WebUIApplication.addEventListener("activated", OnActivated, false);
  </script>
</head>

<body>
...
...
...
</body>
</html>