更新#1:
TL;DR:我想定位:
- Outlook 2016 或更高版本
- 网络上的 Outlook
- 适用于 Mac 的 Outlook 2016
- 适用于 iOS 的 Outlook
- 安卓版展望
我需要 Mailbox 1.5 以支持调用 Outlook REST API并支持可固定任务窗格。
由于可固定任务窗格仅在 Outlook 2016 for Windows 中受支持,并且邮箱 1.5 目前仅在 Outlook 网页版中受支持,因此我需要<VersionOverrides>
在清单的部分中设置邮箱 1.5。
根据验证报告:
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 加载项主机和平台可用性所说的相冲突。所以,我在清单的基础级别设置了邮箱 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.
-------------------------------------
但是,微软的验证报告说:
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.
我已经从 OWA 侧加载了加载项。
我可以看到加载项:
- Outlook 2016 或更高版本 (Windows)
- 网络上的 Outlook (OWA)
我尚未测试加载项是否出现在 Outlook 2016 for Mac 上。
对于我的生活,我似乎无法让加载项出现:
- Outlook 2013 Service Pack 1 或更高版本
- 适用于 iOS 的 Outlook
- 安卓版展望
我不明白为什么。我在清单中遗漏了什么吗?我是否可能错误地配置了清单?请帮忙。