OfficeJS Outlook надстройка не устанавливается
ОБНОВЛЕНИЕ № 1:
TL; DR: я хочу нацелиться на:
- Outlook 2016 или более поздняя версия
- Outlook в Интернете
- Outlook 2016 для Mac
- Outlook для iOS
- Outlook для Android
Мне требуется Mailbox 1.5, чтобы поддерживать вызов API Outlook REST и поддерживать закрепляемые панели задач.
Поскольку закрепляемые панели задач поддерживаются только в Outlook 2016 для Windows, а почтовый ящик 1.5 в настоящее время поддерживается только в Outlook в Интернете, мне нужно будет установить почтовый ящик 1.5 в <VersionOverrides>
разделы манифеста.
На основании отчета о проверке:
Your add-in manifest includes Tablet Settings and Phone Settings, however
Mailbox 1.4 is used in the core of your manifest. This mailbox is not
supported in the Outlook Web App.
Похоже, это противоречит тому, что говорят о доступности узла и платформы Office Add-in. Итак, я установил Mailbox 1.3 на базовом уровне манифеста.
Вот мой манифест:
<?xml version="1.0" encoding="UTF-8"?>
<OfficeApp
xmlns="http://schemas.microsoft.com/office/appforoffice/1.1"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bt="http://schemas.microsoft.com/office/officeappbasictypes/1.0"
xmlns:mailappor="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="MailApp">
<Id>3042ed3a-6ca5-4b37-b5e3-a591f5605332</Id>
<Version>1.0.1.0</Version>
<ProviderName>Leap Legal Software</ProviderName>
<DefaultLocale>en-US</DefaultLocale>
<DisplayName DefaultValue="LEAP Mail Manager" />
<Description DefaultValue="Save your mail to LEAP."/>
<IconUrl DefaultValue="https://outlookapp.leap365.com/images/icon-64.png" />
<HighResolutionIconUrl DefaultValue="https://outlookapp.leap365.com/images/icon-128.png" />
<SupportUrl DefaultValue="https://leap.force.com/us/s/" />
<AppDomains>
<!--LEAP Add-in Domains -->
<AppDomain>https://outlookapp-dev.leap365.com/</AppDomain>
<AppDomain>https://outlookapp-test.leap365.com/</AppDomain>
<AppDomain>https://outlookapp.leap365.com/</AppDomain>
<!--TitleX Add-in Domains -->
<AppDomain>https://outlookapp.dev.titlex.com.au/</AppDomain>
<AppDomain>https://outlookapp.test.titlex.com.au/</AppDomain>
<AppDomain>https://outlookapp.titlex.com.au/</AppDomain>
<!-- LEAP Auth -->
<AppDomain>https://auth-dev.leap.services/</AppDomain>
<AppDomain>https://auth-test.leap.services/</AppDomain>
<AppDomain>https://auth.leap.services/</AppDomain>
<!-- TitleX Auth -->
<AppDomain>https://login.dev.titlex.com.au/</AppDomain>
<AppDomain>https://login.test.titlex.com.au/</AppDomain>
<AppDomain>https://login.titlex.com.au/</AppDomain>
<AppDomain>https://login.dev.titlex.co.uk/</AppDomain>
<AppDomain>https://login.test.titlex.co.uk/</AppDomain>
<AppDomain>https://login.titlex.co.uk/</AppDomain>
<AppDomain>https://login.dev.titlex.com/</AppDomain>
<AppDomain>https://login.test.titlex.com/</AppDomain>
<AppDomain>https://login.titlex.com/</AppDomain>
</AppDomains>
<Hosts>
<Host Name="Mailbox" />
</Hosts>
<Requirements>
<Sets DefaultMinVersion="1.3">
<Set Name="Mailbox" MinVersion="1.3" />
</Sets>
</Requirements>
<FormSettings>
<Form xsi:type="ItemRead">
<DesktopSettings>
<SourceLocation DefaultValue="https://outlookapp.leap365.com/index.html"/>
<RequestedHeight>280</RequestedHeight>
</DesktopSettings>
<TabletSettings>
<SourceLocation DefaultValue="https://outlookapp.leap365.com/index.html" />
<RequestedHeight>280</RequestedHeight>
</TabletSettings>
<PhoneSettings>
<SourceLocation DefaultValue="https://outlookapp.leap365.com/index.html" />
</PhoneSettings>
</Form>
</FormSettings>
<Permissions>ReadWriteMailbox</Permissions>
<Rule xsi:type="RuleCollection" Mode="Or">
<Rule xsi:type="ItemIs" ItemType="Message" FormType="Read" /></Rule>
<DisableEntityHighlighting>false</DisableEntityHighlighting>
<VersionOverrides
xmlns="http://schemas.microsoft.com/office/mailappversionoverrides" xsi:type="VersionOverridesV1_0">
<Requirements>
<bt:Sets DefaultMinVersion="1.5">
<bt:Set Name="Mailbox" MinVersion="1.5" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<FunctionFile resid="Leap.Functions.Url" />
<!-- Message Read -->
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<CustomTab id="TabLeap">
<Group id="Leap.Group1">
<Label resid="Leap.Group1Label" />
<Control xsi:type="Button" id="Leap.DefaultCommand">
<Label resid="Leap.DefaultCommand.Label" />
<Supertip>
<Title resid="Leap.DefaultCommand.Label" />
<Description resid="Leap.DefaultCommand.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Leap.Icon.16" />
<bt:Image size="32" resid="Leap.Icon.32" />
<bt:Image size="80" resid="Leap.Icon.80" />
<bt:Image size="20" resid="Leap.Icon.20" />
<bt:Image size="24" resid="Leap.Icon.24" />
<bt:Image size="40" resid="Leap.Icon.40" />
<bt:Image size="48" resid="Leap.Icon.48" />
<bt:Image size="64" resid="Leap.Icon.64" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Leap.Taskpane.Url" />
</Action>
</Control>
</Group>
<Label resid="Leap.TabLabel"/>
</CustomTab>
</ExtensionPoint>
<!-- Go to http://aka.ms/ExtensionPointsCommands to learn how to add more Extension Points: MessageRead, AppointmentOrganizer, AppointmentAttendee -->
</DesktopFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="Leap.Icon.16" DefaultValue="https://outlookapp.leap365.com/images/icon-16.png"/>
<bt:Image id="Leap.Icon.32" DefaultValue="https://outlookapp.leap365.com/images/icon-32.png"/>
<bt:Image id="Leap.Icon.80" DefaultValue="https://outlookapp.leap365.com/images/icon-80.png"/>
<bt:Image id="Leap.Icon.20" DefaultValue="https://outlookapp.leap365.com/images/icon-20.png" />
<bt:Image id="Leap.Icon.24" DefaultValue="https://outlookapp.leap365.com/images/icon-24.png" />
<bt:Image id="Leap.Icon.25" DefaultValue="https://outlookapp.leap365.com/images/icon-25.png" />
<bt:Image id="Leap.Icon.40" DefaultValue="https://outlookapp.leap365.com/images/icon-40.png" />
<bt:Image id="Leap.Icon.48" DefaultValue="https://outlookapp.leap365.com/images/icon-48.png" />
<bt:Image id="Leap.Icon.64" DefaultValue="https://outlookapp.leap365.com/images/icon-64.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="Leap.Taskpane.Url" DefaultValue="https://outlookapp.leap365.com/index.html" />
<bt:Url id="Leap.Functions.Url" DefaultValue="https://outlookapp.leap365.com/functions.html" />
</bt:Urls>
<bt:ShortStrings>
<bt:String id="Leap.TabLabel" DefaultValue="LEAP Mail Manager" />
<bt:String id="Leap.Group1Label" DefaultValue="LEAP" />
<bt:String id="Leap.DefaultCommand.Label" DefaultValue="LEAP Mail Manager" />
<bt:String id="Leap.DefaultCommand.Title" DefaultValue="LEAP Mail Manager" />
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="Leap.DefaultCommand.Tooltip" DefaultValue="Click to show the add-in." />
<bt:String id="Leap.Description" DefaultValue="Save your mail to LEAP." />
</bt:LongStrings>
</Resources>
<!-- NOTE: TO SUPPORT A PINNABLE TASKPANE AND MOBILEFORMFACTOR -->
<VersionOverrides
xmlns="http://schemas.microsoft.com/office/mailappversionoverrides/1.1" xsi:type="VersionOverridesV1_1">
<Requirements>
<bt:Sets DefaultMinVersion="1.5">
<bt:Set Name="Mailbox" MinVersion="1.5" />
</bt:Sets>
</Requirements>
<Hosts>
<Host xsi:type="MailHost">
<DesktopFormFactor>
<FunctionFile resid="Leap.Functions.Url" />
<!-- Message Read -->
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<CustomTab id="TabLeap">
<Group id="Leap.Group1">
<Label resid="Leap.Group1Label" />
<Control xsi:type="Button" id="Leap.DefaultCommand">
<Label resid="Leap.DefaultCommand.Label" />
<Supertip>
<Title resid="Leap.DefaultCommand.Label" />
<Description resid="Leap.DefaultCommand.Tooltip" />
</Supertip>
<Icon>
<bt:Image size="16" resid="Leap.Icon.16" />
<bt:Image size="32" resid="Leap.Icon.32" />
<bt:Image size="80" resid="Leap.Icon.80" />
<bt:Image size="20" resid="Leap.Icon.20" />
<bt:Image size="24" resid="Leap.Icon.24" />
<bt:Image size="40" resid="Leap.Icon.40" />
<bt:Image size="48" resid="Leap.Icon.48" />
<bt:Image size="64" resid="Leap.Icon.64" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Leap.Taskpane.Url" />
<SupportsPinning>true</SupportsPinning>
</Action>
</Control>
<!-- Go to http://aka.ms/ButtonCommands to learn how to add more Controls: ExecuteFunction and Menu -->
</Group>
<Label resid="Leap.TabLabel"/>
</CustomTab>
</ExtensionPoint>
<!-- Go to http://aka.ms/ExtensionPointsCommands to learn how to add more Extension Points: MessageRead, AppointmentOrganizer, AppointmentAttendee -->
</DesktopFormFactor>
<!-- See https://docs.microsoft.com/en-us/outlook/add-ins/add-mobile-support -->
<MobileFormFactor>
<FunctionFile resid="Leap.Functions.Url" />
<ExtensionPoint xsi:type="MobileMessageReadCommandSurface">
<Group id="Leap.Group1">
<Label resid="Leap.Group1Label" />
<Control xsi:type="MobileButton" id="Leap.DefaultCommand">
<Label resid="Leap.DefaultCommand.Label" />
<Icon xsi:type="bt:MobileIconList">
<bt:Image size="25" scale="1" resid="Leap.Icon.25" />
<bt:Image size="25" scale="2" resid="Leap.Icon.25" />
<bt:Image size="25" scale="3" resid="Leap.Icon.25" />
<bt:Image size="32" scale="1" resid="Leap.Icon.32" />
<bt:Image size="32" scale="2" resid="Leap.Icon.32" />
<bt:Image size="32" scale="3" resid="Leap.Icon.32" />
<bt:Image size="48" scale="1" resid="Leap.Icon.48" />
<bt:Image size="48" scale="2" resid="Leap.Icon.48" />
<bt:Image size="48" scale="3" resid="Leap.Icon.48" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="Leap.Taskpane.Url" />
</Action>
</Control>
</Group>
</ExtensionPoint>
</MobileFormFactor>
</Host>
</Hosts>
<Resources>
<bt:Images>
<bt:Image id="Leap.Icon.16" DefaultValue="https://outlookapp.leap365.com/images/icon-16.png"/>
<bt:Image id="Leap.Icon.32" DefaultValue="https://outlookapp.leap365.com/images/icon-32.png"/>
<bt:Image id="Leap.Icon.80" DefaultValue="https://outlookapp.leap365.com/images/icon-80.png"/>
<bt:Image id="Leap.Icon.20" DefaultValue="https://outlookapp.leap365.com/images/icon-20.png" />
<bt:Image id="Leap.Icon.24" DefaultValue="https://outlookapp.leap365.com/images/icon-24.png" />
<bt:Image id="Leap.Icon.25" DefaultValue="https://outlookapp.leap365.com/images/icon-25.png" />
<bt:Image id="Leap.Icon.40" DefaultValue="https://outlookapp.leap365.com/images/icon-40.png" />
<bt:Image id="Leap.Icon.48" DefaultValue="https://outlookapp.leap365.com/images/icon-48.png" />
<bt:Image id="Leap.Icon.64" DefaultValue="https://outlookapp.leap365.com/images/icon-64.png" />
</bt:Images>
<bt:Urls>
<bt:Url id="Leap.Taskpane.Url" DefaultValue="https://outlookapp.leap365.com/index.html" />
<bt:Url id="Leap.Functions.Url" DefaultValue="https://outlookapp.leap365.com/functions.html" />
</bt:Urls>
<bt:ShortStrings>
<bt:String id="Leap.TabLabel" DefaultValue="LEAP Mail Manager" />
<bt:String id="Leap.Group1Label" DefaultValue="LEAP" />
<bt:String id="Leap.DefaultCommand.Label" DefaultValue="LEAP Mail Manager" />
<bt:String id="Leap.DefaultCommand.Title" DefaultValue="LEAP Mail Manager" />
</bt:ShortStrings>
<bt:LongStrings>
<bt:String id="Leap.DefaultCommand.Tooltip" DefaultValue="Click to show the add-in." />
<bt:String id="Leap.Description" DefaultValue="Save your mail to LEAP." />
</bt:LongStrings>
</Resources>
</VersionOverrides>
</VersionOverrides>
</OfficeApp>
Вот результат validate-office-addin для указанного выше манифеста надстройки:
Calling validation service. This might take a moment...
-------------------------------------
Validation: Passed
Based on the requirements specified in your manifest, your add-in can run on the following platforms; your add-in will be tested on these platforms when you submit it to the Office Store:
- Outlook 2013 Service Pack 1 or later
- Outlook 2016 or later
- Outlook on the Web
- Outlook 2016 for Mac
- Outlook for iOS
- Outlook for Android
Important: This analysis is based on the requirements specified in your manifest and does not account for any runtime JavaScript calls within your add-in. For information about which API sets and features are supported on each platform, see Office Add-in host and platfo
rm availability. (https://dev.office.com/add-in-availability).
*This does not include mobile apps. You can opt-in to support mobile apps when you submit your add-in.
-------------------------------------
Тем не менее, отчет о проверке от Microsoft говорит:
Your add-in is not working in Outlook 2016, Outlook 2013, Outlook for Mac,
the Outlook app on iOS or in the Outlook app on Android. Your add-in is not
available to be inserted in the above platforms. If you do not support 2013
SP1 because you are using an API only available in 2016/Online, you must put
these apis in the requirements tag in your manifest. If you are not using an
API only available in 2016/Online, then you must support 2013 SP1.
Я вижу надстройку на:
- Outlook 2016 или более поздняя версия (Windows)
- Outlook в Интернете (OWA)
Мне еще предстоит проверить, появляется ли надстройка в Outlook 2016 для Mac.
По жизни я не могу получить надстройку, чтобы показать на:
- Outlook 2013 с пакетом обновления 1 или более поздней версии
- Outlook для iOS
- Outlook для Android
Я не понимаю почему. Я что-то упустил в манифесте? Возможно, я неправильно настроил манифест? Пожалуйста помоги.
2 ответа
Добавление некоторых деталей к ответам команды надстройки и магазина.
Проблема Outlook 2013 проистекает из двух противоречивых правил, которым придерживается Outlook:
- Вы объявили свою минимальную версию почтового ящика
1.3
в основном манифесте. - Вы также объявили
VersionOverridesV1_0
раздел с минимальной версией1.5
Средство проверки объявляет о поддержке Outlook 2013 с пакетом обновления 1 (SP1) или более поздней версии, поскольку (как уже упоминалось командой Store) эта версия Outlook поддерживает 1.3
,
Outlook 2013 с пакетом обновления 1 (SP1) или более поздней версии также поддерживает команды надстроек через VersionOverridesV1_0
, Как только Outlook увидит, что у вас объявлены команды надстроек, он начнет использовать команды надстроек. Однако, поскольку они определены как требующие 1.5
Outlook 2013 не может их отобразить.
Чтобы ваши команды надстроек отображались в Outlook 2013, необходимо убедиться, что минимальная версия, в которой вы нуждаетесь VersionOverridesV1_0
является 1.4
или ниже (обратите внимание, что VersionOverridesV1_1
должен оставаться в 1.5
).
Поддержка мобильного Outlook добавлена путем определения MobileFormFactor
элемент в VersionOverridesV1_1
, Смотрите здесь для получения дополнительной информации о MobileFormFactor
Почтовый ящик 1.5 не поддерживается в Outlook 2013 (см. Здесь информацию о доступности). Чтобы надстройка появилась в Outlook 2013, необходимо использовать Почтовый ящик 1.4 или ниже.