Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este artigo apresenta o manifesto de aplicativo unificado para Microsoft 365. Ele pressupõe que você esteja familiarizado com o manifesto dos Suplementos do Office.
Dica
- Para obter uma visão geral do manifesto somente do suplemento, confira Suplementos do Office com o manifesto somente do suplemento.
- Se você estiver familiarizado com o manifesto somente do suplemento, poderá entender o manifesto unificado formatado em JSON com mais facilidade lendo Compare o manifesto somente do suplemento com o manifesto unificado do Microsoft 365.
A Microsoft está fazendo várias melhorias na plataforma de desenvolvedor do Microsoft 365. Essas melhorias fornecem mais consistência no desenvolvimento, implantação, instalação e administração de todos os tipos de aplicativos para o Microsoft 365, incluindo Suplementos do Office. Essas alterações são compatíveis com os suplementos existentes.
Uma melhoria importante é a capacidade de criar uma única unidade de distribuição para vários tipos de aplicativos para o Microsoft 365 usando um único manifesto e pacote de aplicativos. Por exemplo, um Suplemento do Office pode ser combinado com uma guia personalizada do Teams em um único aplicativo para o Microsoft 365.
Dica
Pronto para começar a usar o manifesto unificado? Comece com Criar um suplemento do Outlook com o manifesto unificado para Microsoft 365.
Principais propriedades do manifesto unificado
A documentação de referência principal para a versão do manifesto de aplicativo unificado está em Referência de esquema do manifesto do aplicativo do Microsoft 365. Neste artigo, fornecemos uma breve descrição do significado das propriedades base quando o Aplicativo para Microsoft 365 é (ou inclui) um Suplemento do Office. Isso é seguido por alguma documentação básica da "extensions" propriedade e suas propriedades descendentes. Há um manifesto de exemplo completo para um suplemento no Manifesto unificado de exemplo.
Propriedades base
Cada uma das propriedades básicas listadas na tabela a seguir tem uma documentação mais extensa no esquema de manifesto do aplicativo Microsoft 365. As propriedades base não incluídas nesta tabela não têm significado para os Suplementos do Office.
| Propriedade JSON | Objetivo |
|---|---|
| "$schema" | Identifica o esquema do manifesto. |
"manifestVersion" |
Versão do esquema do manifesto. |
"id" |
GUID do aplicativo para Microsoft 365. |
"version" |
Versão do aplicativo para Microsoft 365. O formato deve ser n.n.n onde cada n um não possa ter mais de cinco dígitos. |
"name" |
Nomes públicos curtos e longos do aplicativo para Microsoft 365. O nome abreviado aparece na parte superior do painel de tarefas de um suplemento. |
"description" |
Descrições públicas curtas e longas do aplicativo para Microsoft 365. |
"developer" |
Informações sobre o desenvolvedor do aplicativo para Microsoft 365. |
"localizationInfo" |
Configura a localidade padrão e outras localidades com suporte. |
"validDomains" |
Consulte Especificar domínios seguros. |
"webApplicationInfo" |
Identifica o aplicativo para o aplicativo Web do Microsoft 365 como ele é conhecido no Microsoft Entra ID. |
"authorization" |
Identifica todas as permissões do Microsoft Graph que o suplemento precisa. |
"extensions" de propriedade
Estamos trabalhando duro para concluir a documentação de referência da propriedade e de "extensions" suas propriedades descendentes. Enquanto isso, o seguinte fornece alguma documentação básica. A maioria, mas não todas, as propriedades têm um elemento (ou atributo) equivalente no manifesto somente do suplemento para suplementos. Na maioria das vezes, a descrição e as restrições que se aplicam ao elemento ou atributo XML também se aplicam à sua propriedade JSON equivalente no manifesto unificado. As tabelas na seção '"extensions" propriedade' de Comparar o manifesto somente do suplemento com o manifesto unificado do Microsoft 365 podem ajudar a determinar o equivalente XML de uma propriedade JSON.
Observação
Esta tabela contém apenas algumas propriedades descendentes representativas selecionadas de "extensions". Não é uma lista exaustiva de todas as propriedades filho de "extensions". Para obter a referência completa do manifesto unificado, consulte a referência do esquema do manifesto do aplicativo Microsoft 365.
| Propriedade JSON | Objetivo |
|---|---|
"requirements.capabilities" |
Identifica os conjuntos de requisitos que o suplemento precisa para ser instalável. |
"requirements.scopes" |
Identifica os aplicativos do Office nos quais o suplemento pode ser instalado. Por exemplo, "mail" significa que o suplemento pode ser instalado no Outlook. |
"ribbons" |
As faixas de opções que o suplemento personaliza. |
"ribbons.contexts" |
Especifica as superfícies de comando que o suplemento personaliza. Por exemplo: "mailRead" ou "mailCompose". |
"ribbons.fixedControls" |
Configura e adiciona o botão de um suplemento integrado de relatório de spam à faixa de opções do Outlook. |
"ribbons.spamPreProcessingDialog" |
Configura a caixa de diálogo de pré-processamento mostrada depois que o botão de um suplemento de relatório de spam é selecionado na faixa de opções do Outlook. |
"ribbons.tabs" |
Configura guias personalizadas da faixa de opções. |
"alternates" |
Especifica a compatibilidade de versões anteriores com um suplemento COM equivalente, XLL ou ambos. Também especifica os ícones principais usados para representar o suplemento em versões mais antigas do Office. |
"runtimes" |
Configura os runtimes inseridos que o suplemento usa, incluindo vários tipos de suplementos que têm pouca ou nenhuma interface do usuário, como suplementos personalizados somente de função e comandos de função. |
"autoRunEvents" |
Remove um manipulador de eventos de um evento especificado. |
"keyboardShortcuts" |
Define atalhos de teclado personalizados ou combinações de teclas para executar ações específicas. |
Especificar domínios seguros
Há uma "validDomains" matriz no arquivo de manifesto que é usada para informar ao Office para quais domínios seu suplemento deve ter permissão para navegar. Conforme observado em Especificar domínios que você deseja abrir na janela do suplemento, ao executar no Office na Web, seu painel de tarefas pode ser navegado para qualquer URL. No entanto, em plataformas de área de trabalho, se o seu suplemento tentar acessar uma URL em um domínio diferente daquele que hospeda a página inicial, essa URL será aberta em uma nova janela do navegador fora do painel de suplemento do aplicativo do Office.
Para substituir esse comportamento em plataformas de área de trabalho, adicione cada domínio que você deseja abrir na janela do suplemento à lista de domínios especificados na "validDomains" matriz. Se o suplemento tentar ir para uma URL em um domínio que está na lista, ela então abre no painel de tarefas do Office para desktop e no Office Online. Se ele tentar acessar uma URL que não está na lista, no Office para área de trabalho, essa URL será aberta em uma nova janela do navegador (fora do painel de tarefas do suplemento).
Suporte ao cliente e à plataforma
Os suplementos que usam o manifesto unificado não podem ser instalados em todas as plataformas. Estamos trabalhando duro para dar suporte a todas as plataformas. Enquanto isso, para aproveitar as possibilidades desbloqueadas pelo manifesto unificado, mas ainda fornecer um complemento aos usuários em plataformas sem suporte, você deve criar e implantar duas versões do suplemento; um que usa o manifesto unificado e outro que usa o manifesto somente do suplemento. Para obter diretrizes sobre como gerenciar as duas versões, consulte Gerenciar um manifesto unificado e uma versão de manifesto somente de suplemento do seu Suplemento do Office.
As tabelas a seguir listam quais plataformas do Office dão suporte a suplementos que usam o manifesto unificado.
Observação
Os suplementos para OneNote e Project não dão suporte ao manifesto unificado.
| Cliente/plataforma | Dá suporte a suplementos com o manifesto unificado |
|---|---|
| Office na Web | Sim |
| Outlook no Windows (clássico) (Versão 2307 (Build 16626.20132) ou posterior) conectado a uma assinatura do Microsoft 365 | Sim |
| novo Outlook no Windows | Sim |
| Excel, PowerPoint e Word no Windows (versão 2501 (18407.20002) ou posterior) conectado a uma assinatura do Microsoft 365 | Sim |
| Excel, PowerPoint e Word no Mac (Versão 16.103 (25101427) ou posterior) | Sim |
| Office no Windows (versões perpétuas) | Não |
| Outlook no Mac | Não |
| Office no celular | Não |
Exemplo de manifesto unificado
Veja a seguir um exemplo de um manifesto de aplicativo unificado para um suplemento. Ele não contém todas as propriedades de manifesto possíveis.
{
"$schema": "https://developer.microsoft.com/json-schemas/teams/vDevPreview/MicrosoftTeams.schema.json",
"id": "00000000-0000-0000-0000-000000000000",
"version": "1.0.0",
"manifestVersion": "devPreview",
"name": {
"short": "Name of your app (<=30 chars)",
"full": "Full name of app, if longer than 30 characters (<=100 chars)"
},
"description": {
"short": "Short description of your app (<= 80 chars)",
"full": "Full description of your app (<= 4000 chars)"
},
"icons": {
"outline": "outline.png",
"color": "color.png"
},
"accentColor": "#230201",
"developer": {
"name": "Contoso",
"websiteUrl": "https://www.contoso.com",
"privacyUrl": "https://www.contoso.com/privacy",
"termsOfUseUrl": "https://www.contoso.com/servicesagreement"
},
"localizationInfo": {
"defaultLanguageTag": "en-us",
"additionalLanguages": [
{
"languageTag": "es-es",
"file": "es-es.json"
}
]
},
"authorization": {
"permissions": {
"resourceSpecific": [
{
"name": "Mailbox.ReadWrite.User",
"type": "Delegated"
}
]
}
},
"extensions": [
{
"requirements": {
"scopes": [ "mail" ],
"capabilities": [
{
"name": "Mailbox", "minVersion": "1.1"
}
]
},
"runtimes": [
{
"requirements": {
"capabilities": [
{
"name": "MailBox",
"minVersion": "1.10"
}
]
},
"id": "eventsRuntime",
"type": "general",
"code": {
"page": "https://contoso.com/events.html",
"script": "https://contoso.com/events.js"
},
"lifetime": "short",
"actions": [
{
"id": "onMessageSending",
"type": "executeFunction"
},
{
"id": "onNewMessageComposeCreated",
"type": "executeFunction"
}
]
},
{
"requirements": {
"capabilities": [
{
"name": "MailBox", "minVersion": "1.1"
}
]
},
"id": "commandsRuntime",
"type": "general",
"code": {
"page": "https://contoso.com/commands.html",
"script": "https://contoso.com/commands.js"
},
"lifetime": "short",
"actions": [
{
"id": "action1",
"type": "executeFunction"
},
{
"id": "action2",
"type": "executeFunction"
},
{
"id": "action3",
"type": "executeFunction"
}
]
}
],
"ribbons": [
{
"contexts": [
"mailCompose"
],
"tabs": [
{
"builtInTabId": "TabDefault",
"groups": [
{
"id": "dashboard",
"label": "Controls",
"controls": [
{
"id": "control1",
"type": "button",
"label": "Action 1",
"icons": [
{
"size": 16,
"url": "test_16.png"
},
{
"size": 32,
"url": "test_32.png"
},
{
"size": 80,
"url": "test_80.png"
}
],
"supertip": {
"title": "Action 1 Title",
"description": "Action 1 Description"
},
"actionId": "action1"
},
{
"id": "menu1",
"type": "menu",
"label": "My Menu",
"icons": [
{
"size": 16,
"url": "test_16.png"
},
{
"size": 32,
"url": "test_32.png"
},
{
"size": 80,
"url": "test_80.png"
}
],
"supertip": {
"title": "My Menu",
"description": "Menu with 2 actions"
},
"items": [
{
"id": "menuItem1",
"type": "menuItem",
"label": "Action 2",
"supertip": {
"title": "Action 2 Title",
"description": "Action 2 Description"
},
"actionId": "action2"
},
{
"id": "menuItem2",
"type": "menuItem",
"label": "Action 3",
"icons": [
{
"size": 16,
"url": "test_16.png"
},
{
"size": 32,
"url": "test_32.png"
},
{
"size": 80,
"url": "test_80.png"
}
],
"supertip": {
"title": "Action 3 Title",
"description": "Action 3 Description"
},
"actionId": "action3"
}
]
}
]
}
],
}
]
},
{
"contexts": [ "mailRead" ],
"tabs": [
{
"builtInTabId": "TabDefault",
"groups": [
{
"id": "dashboard",
"label": "Controls",
"controls": [
{
"id": "control1",
"type": "button",
"label": "Action 1",
"icons": [
{
"size": 16,
"url": "test_16.png"
},
{
"size": 32,
"url": "test_32.png"
},
{
"size": 80,
"url": "test_80.png"
}
],
"supertip": {
"title": "Action 1 Title",
"description": "Action 1 Description"
},
"actionId": "action1"
}
]
}
],
"customMobileRibbonGroups": [
{
"id": "myMobileGroup",
"label": "Contoso Actions",
"controls": [
{
"id": "msgReadFunctionButton",
"type": "mobileButton",
"label": "Action 1",
"icons": [
{
"size": 16,
"url": "test_16.png"
},
{
"size": 32,
"url": "test_32.png"
},
{
"size": 80,
"url": "test_80.png"
}
],
"supertip": {
"title": "Action 1 Title",
"description": "Action 1 Description"
},
"actionId": "action1"
}
]
}
]
}
]
}
],
"autoRunEvents": [
{
"requirements": {
"capabilities": [
{
"name": "MailBox", "minVersion": "1.10"
}
]
},
"events": [
{
"type": "newMessageComposeCreated",
"actionId": "onNewMessageComposeCreated"
},
{
"type": "messageSending",
"actionId": "onMessageSending",
"options": {
"sendMode": "promptUser"
}
}
]
}
],
"alternates": [
{
"requirements": {
"scopes": [ "mail" ]
},
"prefer": {
"comAddin": {
"progId": "ContosoExtension"
}
},
"hide": {
"storeOfficeAddin": {
"officeAddinId": "00000000-0000-0000-0000-000000000000",
"assetId": "WA000000000"
}
},
"alternateIcons": {
"icon": {
"size": 64,
"url": "https://contoso.com/assets/icon64x64.jpg"
},
"highResolutionIcon": {
"size": 64,
"url": "https://contoso.com/assets/icon128x128.jpg"
}
}
}
]
}
]
}