Adaptive Cards: Um Guia Detalhado
Introdução
Adaptive Cards são snippets de UI (Interface de Usuário) independentes de plataforma, criados em JSON, que aplicativos e serviços podem trocar abertamente. Quando entregues a um aplicativo específico, o JSON é transformado em uma UI nativa que se adapta automaticamente ao seu ambiente. Isso facilita o design e a integração de interfaces leves para todas as principais plataformas e frameworks1.
Linha do Tempo dos Adaptive Cards
- 2017:
- 2018:
- 2019:
- 2020:
- 2021:
Tecnologias e Linguagens Envolvidas
- JSON:
- Descrição: Os Adaptive Cards são definidos usando JSON, um formato leve de troca de dados. O JSON descreve a estrutura e o conteúdo do cartão, que é então renderizado nativamente pelo aplicativo host1.
- SDKs de Renderização:
- Linguagem de Template:
- Descrição: A linguagem de template permite a separação dos dados do layout no Adaptive Card. Isso facilita a criação de um cartão uma vez e a sua reutilização com diferentes conjuntos de dados4.
- Binding de Dados:
Exemplos Detalhados de Aplicação
- Microsoft Teams:
- Exemplo: Um bot no Microsoft Teams pode usar Adaptive Cards para coletar feedback dos usuários. O cartão pode incluir campos de entrada para texto, botões de ação e imagens, proporcionando uma experiência interativa e envolvente.
{ "type": "AdaptiveCard", "body": [ { "type": "TextBlock", "text": "Por favor, forneça seu feedback", "weight": "bolder", "size": "medium" }, { "type": "Input.Text", "id": "feedback", "placeholder": "Digite seu feedback aqui..." } ], "actions": [ { "type": "Action.Submit", "title": "Enviar" } ], "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "version": "1.3" } - Outlook Actionable Messages:
- Exemplo: Um e-mail pode incluir um Adaptive Card que permite ao destinatário aprovar ou rejeitar uma solicitação diretamente na mensagem. Isso aumenta a eficiência e reduz a necessidade de abrir aplicativos adicionais.
{ "type": "AdaptiveCard", "body": [ { "type": "TextBlock", "text": "Aprovar solicitação de viagem?", "weight": "bolder", "size": "medium" }, { "type": "TextBlock", "text": "Solicitante: João Silva" }, { "type": "TextBlock", "text": "Destino: São Paulo" } ], "actions": [ { "type": "Action.Submit", "title": "Aprovar", "data": { "action": "approve" } }, { "type": "Action.Submit", "title": "Rejeitar", "data": { "action": "reject" } } ], "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "version": "1.3" } - Windows Timeline:
- Exemplo: Um aplicativo UWP pode usar Adaptive Cards para mostrar atividades recentes na linha do tempo do Windows 10, permitindo que os usuários retomem tarefas de onde pararam.
{ "type": "AdaptiveCard", "body": [ { "type": "TextBlock", "text": "Atividade Recente", "weight": "bolder", "size": "medium" }, { "type": "TextBlock", "text": "Você editou um documento em 23/08/2024" } ], "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "version": "1.3" }
Adaptive Cards são uma tecnologia poderosa e versátil que facilita a criação de interfaces de usuário interativas e consistentes em várias plataformas. Com uma linha do tempo rica em evolução e suporte a diversas tecnologias e linguagens, eles continuam a ser uma escolha popular para desenvolvedores que buscam melhorar a experiência do usuário e aumentar a eficiência.
4: Adaptive Cards Template Language
2: Adaptive Cards: The Future of Digital Interactions
https://learn.microsoft.com/en-us/power-automate/overview-adaptive-cards

Leave a comment