Melhores práticas de atividades de usuários
Este guia descreve as práticas recomendadas para criar e atualizar Atividades do Usuário. Para obter uma visão geral do recurso Atividades do Usuário no Windows, consulte Continuar a atividade do usuário, mesmo entre dispositivos. Ou consulte a seção Atividades do Usuário do Project Rome para as implementações de Atividades em outras plataformas de desenvolvimento.
Observação
A partir de julho de 2021, os usuários que têm o histórico de atividades sincronizado em seus dispositivos Windows por meio de sua MSA (Conta Microsoft) não terão mais a opção de carregar novas atividades na Linha do Tempo. Eles ainda poderão usar a Linha do Tempo e ver seu histórico de atividades (informações sobre aplicativos, sites e arquivos recentes) em seu computador local. As contas conectadas ao AAD não serão impactadas.
Quando criar ou atualizar as atividades do usuário
Como cada aplicativo é diferente, cabe a cada desenvolvedor determinar a melhor maneira de mapear ações dentro do aplicativo para as Atividades do Usuário. Suas atividades do usuário serão exibidas na Cortana e na Linha do Tempo, que se concentram em aumentar a produtividade e a eficiência dos usuários, ajudando-os a voltar ao conteúdo que visitaram no passado.
Diretrizes gerais
- Registre uma única atividade para um grupo de ações do usuário relacionadas. Isso é especialmente relevante para listas de reprodução de música ou programas de TV: uma única atividade pode ser atualizada em intervalos regulares para refletir o progresso do usuário. Nesse caso, você terá uma única Atividade do Usuário com vários Itens de Histórico representando períodos de engajamento em vários dias ou semanas. O mesmo se aplica a atividades baseadas em documentos nas quais o usuário faz progresso gradual em seu aplicativo.
- Armazene os dados do usuário na nuvem. Se você quiser dar suporte a atividades entre dispositivos, precisará garantir que o conteúdo necessário para reativar essa atividade seja armazenado em um local na nuvem. As atividades específicas do dispositivo aparecerão na linha do tempo no dispositivo em que a atividade foi criada, mas podem não aparecer em outros dispositivos.
- Não crie atividades para ações que os usuários não precisarão retomar. Se o aplicativo for usado para concluir operações simples e únicas que não persistem no status, você provavelmente não precisará criar uma Atividade do Usuário.
- Não crie atividades para ações concluídas por outros usuários. Se uma conta externa enviar uma mensagem ao usuário ou mencioná-lo @ em seu aplicativo, você não deverá criar uma atividade para isso. Esse tipo de ação é melhor atendido pelas Notificações da Central de Ações.
- Os cenários de colaboração são uma exceção: se vários usuários estiverem trabalhando juntos na mesma atividade (como um documento do Word), haverá casos em que outro usuário fez alterações após o usuário. Nesse caso, talvez você queira atualizar a Atividade existente para refletir as alterações feitas no documento. Isso envolveria a atualização dos dados de conteúdo de Atividade do Usuário existentes sem criar um novo Item de Histórico.
Diretrizes para tipos específicos de aplicativos
Embora cada aplicativo seja diferente, a maioria dos aplicativos se enquadra em um dos seguintes padrões de interação.
- Aplicativos baseados em documentos — Crie uma atividade por documento, com um ou mais itens de histórico refletindo os períodos de uso. É importante atualizar sua atividade à medida que as alterações são feitas no documento.
- Jogos — Crie uma atividade para cada jogo salvo ou mundo. Se o seu jogo suportar apenas uma única sequência de níveis, você poderá republicar a mesma atividade ao longo do tempo, embora queira atualizar os dados de conteúdo para mostrar o progresso ou as conquistas mais recentes.
- Aplicativos utilitários — Se não houver nada em seu aplicativo que os usuários precisem sair e retomar, você não precisará usar as Atividades do usuário. Um bom exemplo é um aplicativo simples como o Calculator.
- Aplicativos de linha de negócios — Existem muitos aplicativos para gerenciar tarefas ou fluxos de trabalho simples. Crie uma atividade para cada fluxo de trabalho separado acessado por meio de seu aplicativo (por exemplo, relatórios de despesas seriam uma atividade separada, para que o usuário pudesse clicar em uma atividade para ver se um determinado relatório foi aprovado).
- Aplicativos de reprodução de mídia — Crie uma atividade por agrupamento lógico de conteúdo (como uma lista de reprodução, programa ou conteúdo independente). A questão subjacente para os desenvolvedores de aplicativos é se cada parte do conteúdo (episódio de TV, música) conta como conteúdo independente ou parte de uma coleção. Como regra geral, se o usuário optar por reproduzir uma coleção ou conteúdo sequencial, a coleção como um todo é a atividade. Se eles optarem por reproduzir um único conteúdo, esse conteúdo será a atividade. Veja diretrizes mais específicas abaixo.
- Música: Álbum/Artista/Gênero — Se o usuário selecionar um Álbum, Artista ou Gênero e clicar em reproduzir, essa coleção será a atividade; não escreva uma Atividade separada para cada música. Para coleções curtas, como um único álbum ou coleções sendo reproduzidas em uma ordem aleatória, talvez não seja necessário atualizar a atividade para refletir a posição atual do usuário. Para uma reprodução sequencial longa, como um álbum ou uma lista de reprodução, pode fazer sentido gravar sua posição no álbum.
- Música: listas de reprodução inteligentes — Os aplicativos que reproduzem música em ordem aleatória devem gravar uma única atividade para essa lista de reprodução. Se o usuário reproduzir a lista de reprodução uma segunda vez, você criará registros de histórico adicionais para a mesma atividade. Não é necessário registrar a posição atual do usuário na lista de reprodução porque a ordem é aleatória.
- Série de TV — Se o seu aplicativo estiver configurado para reproduzir o próximo episódio após a conclusão do atual, você deverá escrever uma única atividade para a série de TV. À medida que você reproduz os vários episódios em várias sessões de visualização, você atualiza sua atividade para refletir a posição atual na série e vários registros de histórico são criados.
- Filme — Um filme é um único conteúdo e deve ter seu próprio registro histórico. Se o usuário parar de assistir ao filme no meio do caminho, é desejável gravar sua posição. Quando desejarem retomá-lo no futuro, a Atividade poderá retomar o filme de onde parou, ou até mesmo perguntar ao usuário se deseja retomar ou começar do início.
Design de atividade do usuário
As atividades do usuário consistem em três componentes: um URI de ativação, dados visuais e metadados de conteúdo.
- O URI de ativação é um URI que pode ser passado para um aplicativo ou experiência para retomar o aplicativo com um contexto específico. Normalmente, esses links assumem a forma de manipulador de protocolo para um esquema (por exemplo, "my-app://page2?action=edit"). Cabe ao desenvolvedor determinar como os parâmetros de URI serão tratados pelo aplicativo. Consulte Manipular a ativação de URI para obter mais informações.
- Os dados visuais, que consistem em um conjunto de propriedades obrigatórias e opcionais (por exemplo: título, descrição ou elementos de Cartão Adaptável), permitem que os usuários identifiquem visualmente uma Atividade. Veja abaixo as diretrizes sobre como criar visuais de Cartão Adaptável para sua Atividade.
- Os metadados de conteúdo são dados JSON que podem ser usados para agrupar e recuperar atividades em um contexto específico. Normalmente, isso assume a forma de http://schema.org dados. Veja abaixo as orientações sobre como preencher esses dados.
Diretrizes de design do Cartão Adaptável
Quando as Atividades aparecem na Linha do Tempo, elas são exibidas usando a estrutura do Cartão Adaptável. Se o desenvolvedor não fornecer um Cartão Adaptável para cada Atividade, a Linha do Tempo criará automaticamente um cartão simples com base no nome/ícone do aplicativo, no campo Título obrigatório e no campo Descrição opcional.
Os desenvolvedores de aplicativos são incentivados a fornecer cartões personalizados usando o esquema JSON simples do Cartão Adaptável. Consulte a documentação dos Cartões Adaptáveis para obter instruções técnicas sobre como construir objetos de Cartão Adaptável. Consulte as diretrizes abaixo para criar Cartões Adaptáveis em Atividades do Usuário.
- Use imagens
- Use uma imagem exclusiva para cada atividade, se possível. O nome e o ícone do seu aplicativo serão exibidos automaticamente ao lado do cartão da sua atividade; imagens adicionais ajudarão os usuários a localizar a atividade que estão procurando.
- As imagens não devem incluir texto que o usuário deve ler. Este texto não estará disponível para usuários com necessidades de acessibilidade e não pode ser pesquisado.
- Se a imagem não contiver texto e puder ser cortada na proporção de cerca de 2:1, você deverá usá-la como imagem de fundo. Isso resulta em um cartão de atividades em negrito que se destacará na linha do tempo. A imagem será ligeiramente escurecida para garantir que o texto permaneça visível no cartão, e você é incentivado a usar apenas o Nome da Atividade neste caso, pois um texto menor pode se tornar difícil de ler.
- Se a imagem não puder ser cortada para 2:1, você deve colocá-la no Cartão de Atividade.
- Se a proporção for Quadrado ou Retrato, ancore a imagem no lado direito do cartão sem margens.
- Se a proporção for Paisagem, ancore a imagem no canto superior direito do cartão.
- Cada atividade é obrigada a fornecer um Nome da Atividade, que deve ser sempre mostrado.
- Esse nome deve ser exibido no canto superior esquerdo do cartão usando a opção de texto grande em negrito. É importante que o nome seja facilmente reconhecível, pois essa é a única parte que os usuários verão quando a atividade for mostrada em cenários da Cortana. Mostrar o mesmo nome na Linha do tempo torna mais fácil para os usuários navegar por um grande número de atividades.
- Use o mesmo estilo visual para todas as atividades do seu aplicativo, para que os usuários possam localizar facilmente as atividades do seu aplicativo na linha do tempo.
- Por exemplo, todas as atividades devem usar a mesma cor de plano de fundo.
- Use informações de texto complementares com moderação.
- Evite preencher o cartão com texto e use apenas informações complementares que ajudem os usuários a encontrar a atividade certa ou reflitam informações de estado (como o progresso atual em uma tarefa específica).
Diretrizes de metadados de conteúdo
As Atividades do Usuário também podem conter metadados de conteúdo, que o Windows e a Cortana usam para categorizar Atividades e gerar inferências. As atividades podem ser agrupadas em torno de um tópico específico, como um local (se o usuário estiver pesquisando férias), objeto (se o usuário estiver pesquisando algo) ou ação (se o usuário estiver comprando um produto específico em diferentes aplicativos e sites). É uma boa ideia representar os substantivos e os verbos envolvidos em uma atividade.
No exemplo a seguir, o JSON de metadados de conteúdo, seguindo os padrões de Schema.org, representa o cenário: "John jogou Angry Birds com Steve".
// John played angry birds with Steve.
{
"@context": "http://schema.org",
"@type": "PlayAction",
"agent": {
"@type": "Person",
"name": "John"
},
"object": {
"@type": "MobileApplication",
"name": "Angry Birds."
},
"participant": {
"@type": "Person",
"name": "Steve"
}
}